Another movdf_hardfloat32 patch
Franz Sirl
Franz.Sirl-kernel@lauterbach.com
Fri Jun 25 05:43:00 GMT 1999
At 06:57 25.06.99 , Jeffrey A Law wrote:
> In message < 9906230415.AA47648@marc.watson.ibm.com >you write:
> > Does this patch catch all of the non-offsettable yet non-indexed
> > cases which were causing the problem? The indexed version of the code
> > should be avoided where it can -- including LO_SUM addresses. A LO_SUM
> > address is required to be the equivalent of an offsettable address:
> > reg+const.
> >
> > David
> >
> > * rs6000.md (movdf_hardfloat32): Revert previous patch.
> > Handle LO_SUM the same as offsettable in cases 1 and 2.
>Thanks. I also reverted my rs6000.c patch for handling LO_SUM in
>find_addr_reg
>and installed the resulting patch into the mainline sources and on the
>gcc-2.95 branch.
Now something is broken again, eg. in the unsorted/blk.c testcase:
~/gcc/BUILD/obj-ppc-linux/gcc/xgcc -B ~/gcc/BUILD/obj-ppc-linux/gcc/ -O2
-save-temps blk.c -dap
blk.s: Assembler messages:
blk.s:61: Error: unsupported relocation type
blk.s:
46 main:
47 stwu 1,-32(1)
48 mflr 0
49 stw 29,20(1)
50 stw 30,24(1)
51 stw 31,28(1)
52 stw 0,36(1)
53 lis 8,bar+48@ha # 8 elf_high [length = 4]
54 lis 9,0x3ff0 # 41 movsi+1/6 [length = 4]
55 li 10,0 # 42 movsi+1/5 [length = 4]
56 lis 29,foo@ha # 13 elf_high [length = 4]
57 la 29,foo@l(29) # 14 elf_low [length = 4]
58 lis 11,0x4000 # 43 movsi+1/6 [length = 4]
59 li 12,0 # 44 movsi+1/5 [length = 4]
60 stw 9,bar+48@l(8) #
11 *movdf_hardfloat32/3 [length = 16]
61 stw 10,4((null))
62 stw 11,48(29) # 17 *movdf_hardfloat32/3 [length = 16]
63 stw 12,52(29)
64 bl foobar #
20 *ret_call_nonlocal_sysv/1 [length = 4]
65 lfd 1,48(29) # 29 *movdf_hardfloat32/8 [length = 4]
66 lis 3,.LC0@ha # 26 elf_high [length = 4]
67 la 3,.LC0@l(3) # 27 elf_low [length = 4]
68 creqv 6,6,6 #
31 *ret_call_nonlocal_sysv/2 [length = 8]
69 bl printf
70 lwz 0,36(1)
71 mtlr 0
72 lwz 29,20(1)
73 lwz 30,24(1)
74 lwz 31,28(1)
75 la 1,32(1)
76 blr
It seems something tries to print a NULL pointer.
Franz.
More information about the Gcc-patches
mailing list