LVU requires the zero-length (pseudo) insns's length to reflect
reality. If they don't, it may assume there's a PC change where there
isn't any, and then a view-aware assembler will detect the problem and
complain about out-of-sync views.
ppc blockage pseudo-insns did not have the length attribute explicitly
set in them, so they inherited the attribute's default value, and that
was nonzero.
for gcc/ChangeLog
* config/rs6000/rs6000.md (blockage): Set length to zero.
From-SVN: r257520
+2018-02-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/rs6000/rs6000.md (blockage): Set length to zero.
+
2018-02-09 Eric Botcazou <ebotcazou@adacore.com>
* expr.c (optimize_bitfield_assignment_op): Remove obsolete assertion.
(define_insn "blockage"
[(unspec_volatile [(const_int 0)] UNSPECV_BLOCK)]
""
- "")
+ ""
+ [(set_attr "length" "0")])
(define_expand "probe_stack_address"
[(use (match_operand 0 "address_operand"))]