diff options
| -rw-r--r-- | gcc/ChangeLog | 8 | ||||
| -rw-r--r-- | gcc/config/pa/pa.c | 1 | ||||
| -rw-r--r-- | gcc/config/pa/pa.h | 4 | ||||
| -rw-r--r-- | gcc/config/pa/som.h | 2 |
4 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 395d6fb4fbb..0c0cf32260b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * pa.h (ASM_FILE_END): Define. + * som.h (ASM_FILE_END): Delete. + + * pa.c (function_arg): Don't pass floats in general registers in + indirect calls if TARGET_ELF32. + 2002-03-05 Richard Henderson <rth@redhat.com> * config/i386/i386.md (floatsidf2): Conditionalize on hard-float. diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 2061145f51b..16f6533e540 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -7341,6 +7341,7 @@ function_arg (cum, mode, type, named, incoming) to be passed in general registers. */ || (!TARGET_PORTABLE_RUNTIME && !TARGET_64BIT + && !TARGET_ELF32 && cum->indirect) /* If the parameter is not a floating point parameter, then it belongs in GPRs. */ diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 41250568a46..b25b33fbf30 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1696,6 +1696,10 @@ while (0) #define ASM_APP_OFF "" +/* Output deferred plabels at the end of the file. */ + +#define ASM_FILE_END(FILE) output_deferred_plabels (FILE) + /* This is how to output the definition of a user-level label named NAME, such as the label on a static function or variable NAME. */ diff --git a/gcc/config/pa/som.h b/gcc/config/pa/som.h index 5604f54a435..22c46538f66 100644 --- a/gcc/config/pa/som.h +++ b/gcc/config/pa/som.h @@ -349,8 +349,6 @@ readonly_data () \ } \ } while (0) -#define ASM_FILE_END(FILE) output_deferred_plabels (FILE) - /* We want __gcc_plt_call to appear in every program built by gcc, so we make a reference to it out of __main. We use the asm statement to fool the optimizer into not |

