https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121385
--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #5) > Or easier disable aarch64_tbzltdi1 if TARGET_CMPBR like: > diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md > index a4ae6859da0..7c87b091f6b 100644 > --- a/gcc/config/aarch64/aarch64.md > +++ b/gcc/config/aarch64/aarch64.md > @@ -839,7 +839,7 @@ (define_insn "*aarch64_tbz<optab><mode>1" > (label_ref (match_operand 1)) > (pc))) > (clobber (reg:CC CC_REGNUM))] > - "!aarch64_track_speculation" > + "!aarch64_track_speculation && !TARGET_CMPBR" > { > if (get_attr_length (insn) == 8) > { Even after this change I get another failure: ``` /tmp/ccF8DtOh.s: Assembler messages: /tmp/ccF8DtOh.s:187: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L427' /tmp/ccF8DtOh.s:641: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L429' /tmp/ccF8DtOh.s:942: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L431' /tmp/ccF8DtOh.s:1182: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L432' /tmp/ccF8DtOh.s:1376: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L434' /tmp/cchhG5tL.s: Assembler messages: /tmp/cchhG5tL.s:191: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L490' /tmp/cchhG5tL.s:482: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,63,.L493' make[2]: *** [../../../libgcc/shared-object.mk:14: addtf3.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** [../../../libgcc/shared-object.mk:14: subtf3.o] Error 1 /tmp/cc5nbYC9.s: Assembler messages: /tmp/cc5nbYC9.s:11317: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w2,63,.L1070' /tmp/cc5nbYC9.s:14192: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w1,63,.L1437' /tmp/cc5nbYC9.s:19724: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w2,63,.L1795' make[2]: *** [Makefile:655: bid128_div.o] Error 1 /tmp/cclZKGIx.s: Assembler messages: /tmp/cclZKGIx.s:9488: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w5,63,.L785' make[2]: *** [Makefile:655: bid_binarydecimal.o] Error 1 make[2]: Leaving directory '/bajas/pinskia/src/upstream-cross-aarch64/gcc/objdir-stage2/aarch64-linux-gnu/libgcc' make[1]: *** [Makefile:14687: all-target-libgcc] Error 2 make[1]: Leaving directory '/bajas/pinskia/src/upstream-cross-aarch64/gcc/objdir-stage2' ``` But that is a different issue.