This is the mail archive of the gcc@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] |
Hi, >> d1 def r161 >> u11 use r161 >> u12 use r161 >> ... >> d2 def r161 >> u21 use r161 > >> In this case, use-def chain for r161 will be consisting of >{d1,d2}. In case > >The _reg_-def chain will contain both defs. But the def-use >chains will >look like: > [d1] --> {u11,u12} > [d2] --> {u21} Definitely so. >So df_ref_unlink is only called on those chains, where the >use-def chain >of u12 pointed to a def. I.e. if the use-def chain of u12 contains d, >then the def-use chain of d has to contain u12. And this is the >consistency what the abort is testing. OK, the abort seems to check this consistency, and in fact it looks like the def-use chains are actually inconsistent. i.e as pointed out.. >if the use-def chain of u12 contains d, then the def-use chain of d has to contain u12 This is not happening. Pls see the attached .lreg file for the def-use/use-def chain dump in this case. (Pls refer <-- HERE ponters in the lreg file) I am also attaching the advdomestic.i file which was compiled with -ml -m4 -fnew-ra -O2. (compiled for target sh-elf) > >Somehow this invariant was mixed up. Try to find what use is >trying to be >deleted, and why it is tried to be deleted from a def-use chain which >didn't contain it. Snapshot of dump form .lreg file - Use-def chains: (Shouldn't this be def-use instead??) ... d4 bb 0 luid 5 insn 21 reg 161 { u14 u19 u29 u44 u58 u64 } <-- (u29 is modified, previous use-def ref has to be updated) d47 bb 8 luid 1 insn 129 reg 161 { u66 } <-- Is this correct?? ... Def-use chains: (Use-def??) ... u14 bb 3 luid 1 insn 52 reg 161 { d4 d47 } u19 bb 3 luid 3 insn 55 reg 161 { d4 d47 } u29 bb 4 luid 3 insn 80 reg 161 { d4 d47 } u44 bb 5 luid 6 insn 96 reg 161 { d4 d47 } u58 bb 6 luid 2 insn 109 reg 161 { d4 d47 } u64 bb 8 luid 1 insn 129 reg 161 { d4 d47 } u66 bb 8 luid 2 insn 25 reg 161 { d47 } Thanks and Best Regards, Mukta
Attachment:
test_case.tar.gz
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |