Hello, In our port, I created a new NOTE to preserve pragma info. The note is generated as follows in expanding builtins.
rtx note = emit_note(NOTE_INSN_LOOPCOUNT_PRAGMA_BEG); rtx vector = gen_rtx_PARALLEL (VOIDmode, gen_rtvec(4, op0, op1, op2, op3)); XCEXP(note, 4, NOTE) = vector; After the creation: (gdb) p vector->u.fld[0].rt_rtvec $15 = (rtvec) 0x2a95905028 (gdb) p *(vector->u.fld[0].rt_rtvec) $13 = {num_elem = 4, elem = {0x2a955944a0}} and I ran into an issue that GC sometimes reclaims the rtvec after combine pass and causes segmentation fault. (gdb) p vector->u.fld[0].rt_rtvec $15 = (rtvec) 0x2a95905028 (gdb) p *(vector->u.fld[0].rt_rtvec) $16 = {num_elem = -1515870811, elem = {0xa5a5a5a5a5a5a5a5}} I really have no clue on how to debug such issue. Any suggestion is greatly appreciated. Thanks Bingfeng Mei