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]

Why does -fschedule-insns2 in gcc 3.3 generates so many nops on ia64?


While working on ia64 intrinsics, I noticed that gcc 3.3 added many
nops around my new intrinsic when -fschedule-insns2 is used. I am
enclosing 3 files here:

1. bar.i. The source code.
2. O.s. Assembly output generated by -O1.
3. schedule-insns2.s. Assembly output generated by -O1 -fschedule-insns2.

As you can see, -fschedule-insns2 adds at least

+       .mii
+       nop.m 0
+       nop.i 0
+       ;;
+       nop.i 0
+       ;;
+       .mii
+       nop.m 0
+       nop.i 0
+       nop.i 0
+       ;;
+       .mii
+       nop.m 0

What do I need to do to make gcc not to generate those nops and stop
bits when -fschedule-insns2 is used?

Thanks.


H.J.

Attachment: bar.i
Description: Text document

Attachment: O1.s
Description: Text document

Attachment: schedule-insns2.s
Description: Text document


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