From 4aa820fec744198ccdd2d0c4680a1c95c3cdc518 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Fri, 25 May 2012 08:58:25 +0000 Subject: [PATCH] i386.c (struct ix86_frame): Remove unused frame field. gcc/ 2012-05-25 Tristan Gingold * config/i386/i386.c (struct ix86_frame): Remove unused frame field. (ix86_compute_frame_layout): Fix type of stack_alignment_needed and preferred_alignment. gcc/testsuite 2012-05-25 Tristan Gingold * gcc.target/i386/large-frame.c: New. From-SVN: r187873 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.c | 5 ++--- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.target/i386/large-frame.c | 10 ++++++++++ 4 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/gcc.target/i386/large-frame.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dff80d66709c..efb953651cd2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-05-25 Tristan Gingold + + * config/i386/i386.c (struct ix86_frame): Remove unused frame field. + (ix86_compute_frame_layout): Fix type of stack_alignment_needed + and preferred_alignment. + 2012-05-25 Tristan Gingold * common/config/ia64/ia64-common.c (ia64_except_unwind_info): Fix typo. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 12719e2b9a6e..e6f2b7e7e035 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -2408,7 +2408,6 @@ struct ix86_frame int va_arg_size; int red_zone_size; int outgoing_arguments_size; - HOST_WIDE_INT frame; /* The offsets relative to ARG_POINTER. */ HOST_WIDE_INT frame_pointer_offset; @@ -8951,9 +8950,9 @@ ix86_builtin_setjmp_frame_value (void) static void ix86_compute_frame_layout (struct ix86_frame *frame) { - unsigned int stack_alignment_needed; + unsigned HOST_WIDE_INT stack_alignment_needed; HOST_WIDE_INT offset; - unsigned int preferred_alignment; + unsigned HOST_WIDE_INT preferred_alignment; HOST_WIDE_INT size = get_frame_size (); HOST_WIDE_INT to_allocate; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fc3ac5c639cd..686de8534c35 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2012-05-25 Tristan Gingold + + * gcc.target/i386/large-frame.c: New. + 2012-05-24 Pat Haugen * gcc.target/powerpc/lhs-1.c: New. * gcc.target/powerpc/lhs-2.c: New. diff --git a/gcc/testsuite/gcc.target/i386/large-frame.c b/gcc/testsuite/gcc.target/i386/large-frame.c new file mode 100644 index 000000000000..2b6df1f6db8c --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/large-frame.c @@ -0,0 +1,10 @@ +/* { dg-do compile } */ +/* { dg-require-effective-target lp64 } */ +/* { dg-final { scan-assembler "-429496" } } */ +extern void dump (int *buf, int a); + +void func (int a) +{ + int bigbuf[1 << 30]; + dump (bigbuf, a); +}