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]

Re: Handling DWARF call frame labels in the middle of VLIW packets


Daniel Towner wrote:
generating DWARF call frame information and have run into a problem whereby the call frame mechanism tries to output labels in the middle of VLIW packets.

Since you have already hacked up gcc to add VLIW packet support, and we have no information about these hacks you have added, we can't know how best to solve your problem. All I could suggest is that you probably need further extensions to your existing hack. The second solution, changing where the labels get emitted, is probably simpler, and more inline with your current hacks. See dwarf2out_cfi_label in dwarf2out.c which is where the labels come from.


IA-64 supports "tags", which are like labels, but can appear in the middle of bundles, and can't be used as the targets of branches. The IA-64 port uses these for the unwind info. In the IA-64 case, the processor can be put into a single-step mode where insns inside a bundle get executed one at a time. Hence we must have unwind labels inside bundles, or else unwinding would not work in single-step mode. This is probably not an issue for a true-VLIW machine though.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



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