This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: function parms in reg patch


On Tue, May 06, 2003 at 06:31:36PM +0100, Richard Earnshaw wrote:
> 2003-05-02  Alan Modra  <amodra@bigpond.net.au>
> Is causing many regression failures on arm-elf, and causing bootstrap 

Richard,
  For the following testcase

int test3 (int a, int b, int c, long long value, int after);

int foo (void)
{
  return test3 (1, 2, 3, 0x123456789abcdefLL, 0x55);
}

I see no change in generated code between current gcc (*) and current
gcc with my patch reverted.  -O1 gives:

foo:
        @ args = 0, pretend = 0, frame = 0
        @ frame_needed = 1, uses_anonymous_args = 0
        mov     ip, sp
        stmfd   sp!, {fp, ip, lr, pc}
        sub     fp, ip, #4
        sub     sp, sp, #8
        mov     r3, #85
        str     r3, [sp, #4]
        ldr     r3, .L2
        str     r3, [sp, #0]
        ldr     r3, .L2+4
        mov     r0, #1
        mov     r1, #2
        mov     r2, #3
        bl      test3
        ldmea   fp, {fp, sp, pc}
.L3:
        .align  2
.L2:
        .word   19088743
        .word   -1985229329

(*) Well, maybe not quite current.  head of gcc/ChangeLog is
2003-05-05  Roger Sayle  <roger@eyesopen.com>
        * real.c (real_powi): New function to calculate the value of

configured with
CFLAGS="-g -O" CXXFLAGS="-g -O" /src/gcc0/configure --prefix=/usr/local --build=i686-linux --host=i686-linux --target=arm-elf --disable-nls --disable-shared --disable-threads --enable-languages=c

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]