Instruction bundling on IA64 and the Intel Assembler

Geert Bosch bosch@gnat.com
Mon Dec 15 22:25:00 GMT 2003


On Dec 15, 2003, at 16:54, Zack Weinberg wrote:

> Hmm, you are probably right.  Well, how about this?  Always print
> "{.whatever" in the bundle_selector output template; then, whenever
> bundling() goes to emit a bundle_selector, have it also look three
> insns ahead and emit an "}" insn.

That sounds doable and would indeed be a good solution.
I'll investigate this route more.

> I think this will always be right, not interfere with labels and
>  directives, and shouldn't require you to comprehend this problem
>  function.

Yes, that would be a definite plus!
However, my request still stands for more comments in this function.
Vladimir, could you take care of that?

Also, it seems that it might help to break the function up in three
smaller functions:
   - the forward dynamic programming pass generating states
     and finding states with minimal cost (about 150 lines)
   - the backward pass adding nops and templates (about 125 lines)
   - the Itanium-1 specific stuff (about 75 lines)

   -Geert



More information about the Gcc mailing list