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: support tnat instruction on IA-64. error occurs in bundling. help


2007/9/26, Jim Wilson <wilson@specifix.com>:
> ÎâêØ wrote:
> >         [(set_attr "itanium_class" "tnat")])
>
> The itanium_class names are based on info from the Itanium Processor
> Microprocessor Reference by the way.
>
> I believe the problem is that you didn't add info to the DFA scheduler
> dscriptions in the itanium1.md and itanium2.md files for this new
> instruction class.  Normally the DFA scheduler info is optional.
> However, for itanium, we also use the scheduler for bundling, and hence
> proper DFA scheduler info for each instruction class is required.
>
> It appears that the tnat instruction schedules and bundles the same as
> the tbit instruction, so just use the existing tbit class instead of
> trying to add a new one.  The docs are a bit unclear here though, since
> some places mention tbit and tnat, and other places just mention tbit.
> For your purposes, this isn't important.
>
> Modifying the DFA scheduler descriptions is complicated.  It is best to
> avoid that if you can.
>
> Specifying that tnat is an I type instruction isn't enough for bundling
> purposes, since a lot of instructions have further restrictions.  In
> this case, for instance, tnat can only go into an I0 slot, not an I1
> slot.  This detail is handled in the DFA scheduler descriptions.
> --
> Jim Wilson, GNU Tools Support, http://www.specifix.com
>


Truly thanks, I have discovered this problem after I sent the first
mail, and I found itanium1.md and itanium2.md describe the pipeline
hazard, but they are really complex... :-(. Is there any guide or docs
on this? thanks

However, I have adjusted tnat class to tbit, and it seems working now.

Thanks again


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