re PR target/45213 ("suffix or operands invalid for `push'" triggered by optimisations on x86_64)
PR target/45213 * config/i386/i386.c (ix86_print_operand): Handle 'q' operand modifier to output 32bit SFmode immediate as 8 byte sign extended value. testsuite/ChangeLog: PR target/45213 * gcc.target/i386/pr45213.c: New test. From-SVN: r162983
This commit is contained in:
parent
a4ed58ce81
commit
f6ddf131f0
@ -1,3 +1,10 @@
|
||||
2010-08-07 Uros Bizjak <ubizjak@gmail.com>
|
||||
H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR target/45213
|
||||
* config/i386/i386.c (ix86_print_operand): Handle 'q' operand modifier
|
||||
to output 32bit SFmode immediate as 8 byte sign extended value.
|
||||
|
||||
2010-08-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
|
||||
|
||||
* config/arm/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
|
||||
@ -11,16 +18,16 @@
|
||||
|
||||
2010-08-07 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
|
||||
|
||||
* config/arm/cortex-a9.md: Rewrite VFP Pipeline description.
|
||||
* config/arm/arm.c (arm_xscale_tune): Initialize sched_adjust_cost.
|
||||
(arm_fastmul_tune,arm_slowmul_tune, arm_9e_tune): Likewise.
|
||||
(arm_adjust_cost): Split into xscale_sched_adjust_cost and a
|
||||
generic part.
|
||||
(cortex_a9_sched_adjust_cost): New function.
|
||||
(xscale_sched_adjust_cost): New function.
|
||||
* config/arm/arm-protos.h (struct tune_params): New field
|
||||
sched_adjust_cost.
|
||||
* config/arm/arm-cores.def: Adjust costs for cortex-a9.
|
||||
* config/arm/cortex-a9.md: Rewrite VFP Pipeline description.
|
||||
* config/arm/arm.c (arm_xscale_tune): Initialize sched_adjust_cost.
|
||||
(arm_fastmul_tune,arm_slowmul_tune, arm_9e_tune): Likewise.
|
||||
(arm_adjust_cost): Split into xscale_sched_adjust_cost and a
|
||||
generic part.
|
||||
(cortex_a9_sched_adjust_cost): New function.
|
||||
(xscale_sched_adjust_cost): New function.
|
||||
* config/arm/arm-protos.h (struct tune_params): New field
|
||||
sched_adjust_cost.
|
||||
* config/arm/arm-cores.def: Adjust costs for cortex-a9.
|
||||
|
||||
2010-08-06 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
|
@ -12921,7 +12921,11 @@ ix86_print_operand (FILE *file, rtx x, int code)
|
||||
|
||||
if (ASSEMBLER_DIALECT == ASM_ATT)
|
||||
putc ('$', file);
|
||||
fprintf (file, "0x%08lx", (long unsigned int) l);
|
||||
/* Sign extend 32bit SFmode immediate to 8 bytes. */
|
||||
if (code == 'q')
|
||||
fprintf (file, "0x%08llx", (unsigned long long) (int) l);
|
||||
else
|
||||
fprintf (file, "0x%08x", (unsigned int) l);
|
||||
}
|
||||
|
||||
/* These float cases don't actually occur as immediate operands. */
|
||||
|
@ -1,3 +1,8 @@
|
||||
2010-08-07 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
PR target/45213
|
||||
* gcc.target/i386/pr45213.c: New test.
|
||||
|
||||
2010-08-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR libfortran/45143
|
||||
@ -5,9 +10,9 @@
|
||||
|
||||
2010-08-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
|
||||
|
||||
* lib/target-supports.exp: (check_effective_target_sync_int_long):
|
||||
Add arm*-*-linux-gnueabi.
|
||||
(check_effective_target_sync_char_short): Likewise.
|
||||
* lib/target-supports.exp (check_effective_target_sync_int_long):
|
||||
Add arm*-*-linux-gnueabi.
|
||||
(check_effective_target_sync_char_short): Likewise.
|
||||
|
||||
2010-08-06 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||||
|
||||
|
9
gcc/testsuite/gcc.target/i386/pr45213.c
Normal file
9
gcc/testsuite/gcc.target/i386/pr45213.c
Normal file
@ -0,0 +1,9 @@
|
||||
/* { dg-do assemble } */
|
||||
/* { dg-options "-Os -fno-omit-frame-pointer" } */
|
||||
|
||||
void f (float, float, float, float, float, float, float, float, float, float);
|
||||
|
||||
void g (void)
|
||||
{
|
||||
f (0, 0, 0, 0, 0, 0, 0, 0, -1, 1);
|
||||
}
|
Loading…
Reference in New Issue
Block a user