Dear Ian, Thanks the reply.
>> Is there a way to make the instruction has to allocate to run without >> using the scheduler for particular instruction ? > > I don't understand the question. The target we are using supports parallel instruction execution, Max 7. For one cycle, one instruction packet is executed. one packet has max 7 instructions. so the scheduler is enabled. However, the scheduler enabling is not required for some packets. so how we can disable the instruction scheduling for particular packets ? > Nothing is out of scope of the scheduler. Using unspec_volatile in > the RTL template makes the instruction a scheduling barrier and a > memory barrier. Can you give more information or link to understand more about unspec_volatile ? The information available in gcc internals is not sufficient. Thanks and Regards Raja Saleru > raja.sal...@iap-online.com writes: > >> In gcc, while instruction scheduling can it be possible to suspend the >> scheduling for some instructions ? or > > No. You can turn off instruction scheduling for the entire > compilation. You can use #pragma GCC optimize to turn scheduling off > for a specific function. But there is no way to turn it off for some > instructions within a function but not others. > > >> Is there a way to make the instruction has to allocate to run without >> using the scheduler for particular instruction ? > > I don't understand the question. > > >> Currently there is RTL template in machine description >> unspec_volatile(). >> If the instruction is scheduled using this, does this make the >> instruction >> out of scope of scheduler ? > > Nothing is out of scope of the scheduler. Using unspec_volatile in > the RTL template makes the instruction a scheduling barrier and a > memory barrier. > > Ian >