mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-23 12:01:15 +08:00
Richard Earnshaw <rearnsha@arm.com>
Daniel Jacobowitz <drow@mvista.com> * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case. (EQUIV): Define. (ARM_FUNC_ALIAS): New macro. * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it. * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it. Co-Authored-By: Daniel Jacobowitz <drow@mvista.com> From-SVN: r75930
This commit is contained in:
parent
4e394293bf
commit
46049cff4f
@ -1,3 +1,12 @@
|
||||
2004-01-15 Richard Earnshaw <rearnsha@arm.com>
|
||||
Daniel Jacobowitz <drow@mvista.com>
|
||||
|
||||
* arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case.
|
||||
(EQUIV): Define.
|
||||
(ARM_FUNC_ALIAS): New macro.
|
||||
* arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it.
|
||||
* arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it.
|
||||
|
||||
2004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||
|
||||
PR optimization/12372
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* ieee754-df.S double-precision floating point support for ARM
|
||||
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 2003, 2004 Free Software Foundation, Inc.
|
||||
Contributed by Nicolas Pitre (nico@cam.org)
|
||||
|
||||
This file is free software; you can redistribute it and/or modify it
|
||||
@ -940,19 +940,19 @@ LSYM(Ldv_s):
|
||||
|
||||
#ifdef L_cmpdf2
|
||||
|
||||
FUNC_START gedf2
|
||||
ARM_FUNC_START gtdf2
|
||||
ARM_FUNC_ALIAS gedf2 gtdf2
|
||||
mov ip, #-1
|
||||
b 1f
|
||||
|
||||
FUNC_START ledf2
|
||||
ARM_FUNC_START ltdf2
|
||||
ARM_FUNC_ALIAS ledf2 ltdf2
|
||||
mov ip, #1
|
||||
b 1f
|
||||
|
||||
FUNC_START nedf2
|
||||
FUNC_START eqdf2
|
||||
ARM_FUNC_START cmpdf2
|
||||
ARM_FUNC_ALIAS nedf2 cmpdf2
|
||||
ARM_FUNC_ALIAS eqdf2 cmpdf2
|
||||
mov ip, #1 @ how should we specify unordered here?
|
||||
|
||||
1: stmfd sp!, {r4, r5, lr}
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* ieee754-sf.S single-precision floating point support for ARM
|
||||
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 2003, 2004 Free Software Foundation, Inc.
|
||||
Contributed by Nicolas Pitre (nico@cam.org)
|
||||
|
||||
This file is free software; you can redistribute it and/or modify it
|
||||
@ -642,19 +642,19 @@ LSYM(Ldv_s):
|
||||
|
||||
#ifdef L_cmpsf2
|
||||
|
||||
FUNC_START gesf2
|
||||
ARM_FUNC_START gtsf2
|
||||
ARM_FUNC_ALIAS gesf2 gtsf2
|
||||
mov r3, #-1
|
||||
b 1f
|
||||
|
||||
FUNC_START lesf2
|
||||
ARM_FUNC_START ltsf2
|
||||
ARM_FUNC_ALIAS lesf2 ltsf2
|
||||
mov r3, #1
|
||||
b 1f
|
||||
|
||||
FUNC_START nesf2
|
||||
FUNC_START eqsf2
|
||||
ARM_FUNC_START cmpsf2
|
||||
ARM_FUNC_ALIAS nesf2 cmpsf2
|
||||
ARM_FUNC_ALIAS eqsf2 cmpsf2
|
||||
mov r3, #1 @ how should we specify unordered here?
|
||||
|
||||
1: @ Trap any INF/NAN first.
|
||||
|
@ -1,7 +1,8 @@
|
||||
@ libgcc routines for ARM cpu.
|
||||
@ Division routines, written by Richard Earnshaw, (rearnsha@armltd.co.uk)
|
||||
|
||||
/* Copyright 1995, 1996, 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||
/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
@ -202,12 +203,24 @@ SYM (__\name):
|
||||
.arm
|
||||
_L__\name: /* A hook to tell gdb that we've switched to ARM */
|
||||
.endm
|
||||
#define EQUIV .thumb_set
|
||||
#else
|
||||
.macro ARM_FUNC_START name
|
||||
FUNC_START \name
|
||||
.text
|
||||
.globl SYM (__\name)
|
||||
TYPE (__\name)
|
||||
.align 0
|
||||
.arm
|
||||
SYM (__\name):
|
||||
.endm
|
||||
#define EQUIV .set
|
||||
#endif
|
||||
|
||||
.macro ARM_FUNC_ALIAS new old
|
||||
.globl SYM (__\new)
|
||||
EQUIV SYM (__\new), SYM (__\old)
|
||||
.endm
|
||||
|
||||
#ifdef __thumb__
|
||||
/* Register aliases. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user