This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bug 84762 - GCC for PowerPC32 violates the SysV ABI spec for small struct returns
- From: Lokesh Janghel <lokeshjanghel91 at gmail dot com>
- To: sirl at gcc dot gnu dot org
- Cc: segher at gcc dot gnu dot org, umesh dot kalappa0 at gmail dot com, gcc at gcc dot gnu dot org
- Date: Mon, 19 Nov 2018 20:06:18 +0530
- Subject: Re: Bug 84762 - GCC for PowerPC32 violates the SysV ABI spec for small struct returns
Hi Segher,
I am building the GCC with the following configuration ( using gcc trunk ).
../gcc/configure --target=powerpc-linux
--prefix=/opt/buckeye/powerpc-linux --disable-shared --disable-threads
--enable-languages=c --with-newlib
And my assembly code (without optimization) is:
$ cc1 -msvr4-struct-return test.c
.LFB0:
stwu 1,-32(1)
.LCFI0:
stw 31,28(1)
.LCFI1:
mr 31,1
.LCFI2:
lis 9,.LC0@ha
la 9,.LC0@l(9)
lhz 10,0(9)
lbz 9,2(9)
sth 10,11(31)
stb 9,13(31)
lhz 10,11(31)
lbz 9,13(31)
sth 10,8(31)
stb 9,10(31)
li 9,0
lbz 10,8(31)
rlwinm 10,10,0,24,31
slwi 10,10,16
rlwinm 9,9,0,16,7
or 9,9,10
lbz 10,9(31)
rlwinm 10,10,0,24,31
slwi 10,10,8
rlwinm 9,9,0,24,15
or 9,9,10
lbz 10,10(31)
rlwinm 10,10,0,24,31
rlwinm 9,9,0,0,23
or 9,9,10
mr 3,9
addi 11,31,32
lwz 31,-4(11)
.LCFI3:
mr 1,11
.LCFI4:
blr
Assembly code (with optimization -O2) is:
$ cc1 -msvr4-struct-return -O2 test.c
.LFB0:
stwu 1,-32(1)
.LCFI0:
lis 3,0x11
ori 3,3,0x2233
addi 1,1,32
.LCFI1:
blr
As you mentioned assembly code in the GCC Bugzilla, I am not able to
reproduce the issue.
Please let me know your options used to reproduce this issue.
Sirl,
If you got the patch for this issue or will look into the issue.
--
Thanks & Regards
Lokesh Janghel