https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #21 from dave.anglin at bell dot net --- On 2019-07-01 12:53 p.m., elowe at elowe dot com wrote: > Working assembler for hello world program: > > => 0x4000000000000c90 <+0>: [MII] alloc r33=ar.pfs,5,4,0 > 0x4000000000000c91 <+1>: mov r34=r12 > 0x4000000000000c92 <+2>: mov r32=b0 > 0x4000000000000ca0 <+16>: [MII] mov r35=r1 > 0x4000000000000ca1 <+17>: addl r36=-16,r1;; > 0x4000000000000ca2 <+18>: nop.i 0x0 > > Bad assembler: > > => 0x4000000000000c00 <+0>: [MII] alloc r33=ar.pfs,5,4,0 > 0x4000000000000c01 <+1>: mov r34=r12 > 0x4000000000000c02 <+2>: mov r32=b0 > 0x4000000000000c10 <+16>: [MLX] cmp.lt p0,p0=r0,r0 <<< Illegal > Instruction > 0x4000000000000c11 <+17>: movl r36=0x42c018000000000;; > 0x4000000000000c20 <+32>: [MIB] add r36=r1,r36 > 0x4000000000000c21 <+33>: nop.i 0x0 I can't help with ia64 instructions. This looks like a different bug from the original report. Are you using GNU or HP tools? Did you specify "--with-gnu-as" and/or "--with-gnu-ld" in your configure options? On hppa, the HP assembler is not recommended. I'm a bit surprised that the illegal instruction wasn't an assembler error. I would switch to testing trunk as any fix will be applied to it first. If you add "-da" to the compile options for the hello world program, you should see the RTL generated in various compilation stages. Ultimately, the final stage is output as assembler. Comparing your working compiler to the broken compiler may give clues as to what is broken and when it occurs. "-save-temps -v" is another useful option. It saves intermediate files and shows intermediate compilation commands.