https://github.com/redstar updated https://github.com/llvm/llvm-project/pull/181904
>From d6379472e4b8d1a22b03d2c9dcf68c0b32f69c4f Mon Sep 17 00:00:00 2001 From: Kai Nacke <[email protected]> Date: Wed, 25 Mar 2026 16:02:48 -0400 Subject: [PATCH 1/3] [MC] Move addEncodingComment() into new base class MCAsmBaseStreamer This is in preparation to use this functionality in the SystemZHLASMAsmStreamer. No functional change. --- llvm/include/llvm/MC/MCAsmStreamer.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/llvm/include/llvm/MC/MCAsmStreamer.h b/llvm/include/llvm/MC/MCAsmStreamer.h index 942e9e40b1274..4780c7892bc12 100644 --- a/llvm/include/llvm/MC/MCAsmStreamer.h +++ b/llvm/include/llvm/MC/MCAsmStreamer.h @@ -14,6 +14,9 @@ #ifndef LLVM_MC_MCASMSTREAMER_H #define LLVM_MC_MCASMSTREAMER_H +#include "llvm/MC/MCAsmBackend.h" +#include "llvm/MC/MCAssembler.h" +#include "llvm/MC/MCCodeEmitter.h" #include "llvm/MC/MCStreamer.h" #include "llvm/Support/raw_ostream.h" #include <memory> >From c615770ba794687ad7c40671e38997a2608ea781 Mon Sep 17 00:00:00 2001 From: Kai Nacke <[email protected]> Date: Tue, 17 Feb 2026 14:32:24 -0500 Subject: [PATCH 2/3] [SystemZ][z/OS] Show instruction encoding in HLASM output This change adds the support to show instruction encoding as a comment when emitting HLASM text. With this, the last 2 LIT tests migrate to HLASM syntax. --- .../MCTargetDesc/SystemZHLASMAsmStreamer.cpp | 3 + .../MCTargetDesc/SystemZHLASMAsmStreamer.h | 27 ++-- llvm/test/CodeGen/SystemZ/call-zos-02.ll | 12 +- llvm/test/MC/SystemZ/insn-good-zos-pcrel.s | 140 +++++++++++------- 4 files changed, 103 insertions(+), 79 deletions(-) diff --git a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp index 9e7c35b5c3ce9..3999534fac1b8 100644 --- a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp +++ b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp @@ -188,6 +188,9 @@ void SystemZHLASMAsmStreamer::emitBytes(StringRef Data) { void SystemZHLASMAsmStreamer::emitInstruction(const MCInst &Inst, const MCSubtargetInfo &STI) { + // Show the encoding in a comment if we have a code emitter. + addEncodingComment(Inst, STI); + EmitEOL(); InstPrinter->printInst(&Inst, 0, "", STI, OS); EmitEOL(); diff --git a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h index d3fe8d791dd0f..7a0eab9b940c3 100644 --- a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h +++ b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h @@ -17,6 +17,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/MC/MCAsmBackend.h" #include "llvm/MC/MCAsmInfo.h" +#include "llvm/MC/MCAsmStreamer.h" #include "llvm/MC/MCAssembler.h" #include "llvm/MC/MCCodeEmitter.h" #include "llvm/MC/MCContext.h" @@ -30,7 +31,7 @@ namespace llvm { class MCSymbolGOFF; -class SystemZHLASMAsmStreamer final : public MCStreamer { +class SystemZHLASMAsmStreamer final : public MCAsmBaseStreamer { constexpr static size_t InstLimit = 80; constexpr static size_t ContIndicatorColumn = 72; constexpr static size_t ContStartColumn = 15; @@ -41,25 +42,17 @@ class SystemZHLASMAsmStreamer final : public MCStreamer { raw_string_ostream OS; const MCAsmInfo *MAI; std::unique_ptr<MCInstPrinter> InstPrinter; - std::unique_ptr<MCAssembler> Assembler; - SmallString<128> CommentToEmit; - raw_svector_ostream CommentStream; - raw_null_ostream NullStream; bool IsVerboseAsm = false; public: SystemZHLASMAsmStreamer(MCContext &Context, - std::unique_ptr<formatted_raw_ostream> os, - std::unique_ptr<MCInstPrinter> printer, - std::unique_ptr<MCCodeEmitter> emitter, - std::unique_ptr<MCAsmBackend> asmbackend) - : MCStreamer(Context), FOSOwner(std::move(os)), FOS(*FOSOwner), OS(Str), - MAI(&Context.getAsmInfo()), InstPrinter(std::move(printer)), - Assembler(std::make_unique<MCAssembler>( - Context, std::move(asmbackend), std::move(emitter), - (asmbackend) ? asmbackend->createObjectWriter(NullStream) - : nullptr)), - CommentStream(CommentToEmit) { + std::unique_ptr<formatted_raw_ostream> OS, + std::unique_ptr<MCInstPrinter> Printer, + std::unique_ptr<MCCodeEmitter> Emitter, + std::unique_ptr<MCAsmBackend> AsmBackend) + : MCAsmBaseStreamer(Context, std::move(Emitter), std::move(AsmBackend)), + FOSOwner(std::move(OS)), FOS(*FOSOwner), OS(Str), + MAI(&Context.getAsmInfo()), InstPrinter(std::move(Printer)) { assert(InstPrinter); if (Assembler->getBackendPtr()) setAllowAutoPadding(Assembler->getBackend().allowAutoPadding()); @@ -70,8 +63,6 @@ class SystemZHLASMAsmStreamer final : public MCStreamer { InstPrinter->setCommentStream(CommentStream); } - MCAssembler &getAssembler() { return *Assembler; } - void EmitEOL(); void EmitComment(); diff --git a/llvm/test/CodeGen/SystemZ/call-zos-02.ll b/llvm/test/CodeGen/SystemZ/call-zos-02.ll index 4f1013fc8974d..7ddfda84ef4f6 100644 --- a/llvm/test/CodeGen/SystemZ/call-zos-02.ll +++ b/llvm/test/CodeGen/SystemZ/call-zos-02.ll @@ -1,4 +1,4 @@ -; RUN: llc --mtriple=s390x-ibm-zos --show-mc-encoding -emit-gnuas-syntax-on-zos=1 < %s | FileCheck %s +; RUN: llc --mtriple=s390x-ibm-zos --show-mc-encoding < %s | FileCheck %s define internal signext i32 @caller() { entry: @@ -8,10 +8,12 @@ entry: define hidden signext i32 @caller2() { entry: -; CHECK-LABEL: caller2: -; CHECK: brasl 7,caller * encoding: [0xc0,0x75,A,A,A,A] -; CHECK-NEXT: * fixup A - offset: 2, value: caller+2, kind: FK_390_PC32DBL -; CHECK-NEXT: bcr 0,3 * encoding: [0x07,0x03] +; CHECK-LABEL: caller2 DS 0H +; CHECK: * encoding: [0xc0,0x75,A,A,A,A] +; CHECK-NEXT: * fixup A - offset: 2, value: caller+2, kind: FK_390_PC32DBL +; CHECK-NEXT: brasl 7,caller +; CHECK-NEXT: * encoding: [0x07,0x03] +; CHECK-NEXT: bcr 0,3 %call = call signext i32 @caller() ret i32 %call } diff --git a/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s b/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s index ce3b7b5e6d410..50ec132f10723 100644 --- a/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s +++ b/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s @@ -1,102 +1,130 @@ * For z10 and above. -* RUN: llvm-mc -triple s390x-ibm-zos -show-encoding -emit-gnuas-syntax-on-zos=1 --output-asm-variant=0 %s | FileCheck %s - -*CHECK: brcl 0, FOO * encoding: [0xc0,0x04,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnop FOO * encoding: [0xc0,0x04,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +* RUN: llvm-mc -triple s390x-ibm-zos -show-encoding %s | FileCheck %s + +*CHECK: * encoding: [0xc0,0x04,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: brcl 0, FOO +*CHECK: * encoding: [0xc0,0x04,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnop FOO brcl 0,FOO jlnop FOO -*CHECK: jge FOO * encoding: [0xc0,0x84,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jge FOO * encoding: [0xc0,0x84,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x84,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jge FOO +*CHECK: * encoding: [0xc0,0x84,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jge FOO jle FOO brel FOO -*CHECK: jgne FOO * encoding: [0xc0,0x74,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgne FOO * encoding: [0xc0,0x74,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x74,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgne FOO +*CHECK: * encoding: [0xc0,0x74,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgne FOO jlne FOO brnel FOO -*CHECK: jgh FOO * encoding: [0xc0,0x24,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgh FOO * encoding: [0xc0,0x24,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x24,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgh FOO +*CHECK: * encoding: [0xc0,0x24,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgh FOO jlh FOO brhl FOO -*CHECK: jgnh FOO * encoding: [0xc0,0xd4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnh FOO * encoding: [0xc0,0xd4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0xd4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnh FOO +*CHECK: * encoding: [0xc0,0xd4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnh FOO jlnh FOO brnhl FOO -*CHECK: jgl FOO * encoding: [0xc0,0x44,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgl FOO * encoding: [0xc0,0x44,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x44,A,A,A,A] +*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgl FOO +*CHECK: * encoding: [0xc0,0x44,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgl FOO jll FOO brll FOO -*CHECK: jgnl FOO * encoding: [0xc0,0xb4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnl FOO * encoding: [0xc0,0xb4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0xb4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnl FOO +*CHECK: * encoding: [0xc0,0xb4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnl FOO jlnl FOO brnll FOO -*CHECK: jgz FOO * encoding: [0xc0,0x84,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgz FOO * encoding: [0xc0,0x84,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x84,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgz FOO +*CHECK: * encoding: [0xc0,0x84,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgz FOO jlz FOO brzl FOO -*CHECK: jgnz FOO * encoding: [0xc0,0x74,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnz FOO * encoding: [0xc0,0x74,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x74,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnz FOO +*CHECK: * encoding: [0xc0,0x74,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnz FOO jlnz FOO brnzl FOO -*CHECK: jgp FOO * encoding: [0xc0,0x24,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgp FOO * encoding: [0xc0,0x24,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x24,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgp FOO +*CHECK: * encoding: [0xc0,0x24,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgp FOO jlp FOO brpl FOO -*CHECK: jgnp FOO * encoding: [0xc0,0xd4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnp FOO * encoding: [0xc0,0xd4,A,A,A,A] +*CHECK: * encoding: [0xc0,0xd4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnp FOO +*CHECK: * encoding: [0xc0,0xd4,A,A,A,A] *CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnp FOO jlnp FOO brnpl FOO -*CHECK: jgm FOO * encoding: [0xc0,0x44,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgm FOO * encoding: [0xc0,0x44,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0x44,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgm FOO +*CHECK: * encoding: [0xc0,0x44,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgm FOO jlm FOO brml FOO -*CHECK: jgnm FOO * encoding: [0xc0,0xb4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnm FOO * encoding: [0xc0,0xb4,A,A,A,A] +*CHECK: * encoding: [0xc0,0xb4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnm FOO +*CHECK: * encoding: [0xc0,0xb4,A,A,A,A] *CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jgnm FOO jlnm FOO brnml FOO -*CHECK: jg FOO * encoding: [0xc0,0xf4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jg FOO * encoding: [0xc0,0xf4,A,A,A,A] -*CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: * encoding: [0xc0,0xf4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jg FOO +*CHECK: * encoding: [0xc0,0xf4,A,A,A,A] +*CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL +*CHECK: jg FOO jlu FOO brul FOO >From 369269f6ff8e8b8420b539ea94c3b09e933d7949 Mon Sep 17 00:00:00 2001 From: Kai Nacke <[email protected]> Date: Fri, 10 Apr 2026 21:16:22 -0400 Subject: [PATCH 3/3] Fully translate test case to HLASM syntax dialect This is a follow-up to 9d4436e3f4dfecd9503e90fb4cba907c86103e1e which came in through the rebase. --- llvm/test/MC/SystemZ/insn-good-zos-pcrel.s | 56 +++++++++++----------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s b/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s index 50ec132f10723..d769f6e6e3b4b 100644 --- a/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s +++ b/llvm/test/MC/SystemZ/insn-good-zos-pcrel.s @@ -3,128 +3,128 @@ *CHECK: * encoding: [0xc0,0x04,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: brcl 0, FOO +*CHECK: brcl 0,FOO *CHECK: * encoding: [0xc0,0x04,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnop FOO +*CHECK: jlnop FOO brcl 0,FOO jlnop FOO *CHECK: * encoding: [0xc0,0x84,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jge FOO +*CHECK: jle FOO *CHECK: * encoding: [0xc0,0x84,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jge FOO +*CHECK: jle FOO jle FOO brel FOO *CHECK: * encoding: [0xc0,0x74,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgne FOO +*CHECK: jlne FOO *CHECK: * encoding: [0xc0,0x74,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgne FOO +*CHECK: jlne FOO jlne FOO brnel FOO *CHECK: * encoding: [0xc0,0x24,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgh FOO +*CHECK: jlh FOO *CHECK: * encoding: [0xc0,0x24,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgh FOO +*CHECK: jlh FOO jlh FOO brhl FOO *CHECK: * encoding: [0xc0,0xd4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnh FOO +*CHECK: jlnh FOO *CHECK: * encoding: [0xc0,0xd4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnh FOO +*CHECK: jlnh FOO jlnh FOO brnhl FOO *CHECK: * encoding: [0xc0,0x44,A,A,A,A] *CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgl FOO +*CHECK: jll FOO *CHECK: * encoding: [0xc0,0x44,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgl FOO +*CHECK: jll FOO jll FOO brll FOO *CHECK: * encoding: [0xc0,0xb4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnl FOO +*CHECK: jlnl FOO *CHECK: * encoding: [0xc0,0xb4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnl FOO +*CHECK: jlnl FOO jlnl FOO brnll FOO *CHECK: * encoding: [0xc0,0x84,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgz FOO +*CHECK: jlz FOO *CHECK: * encoding: [0xc0,0x84,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgz FOO +*CHECK: jlz FOO jlz FOO brzl FOO *CHECK: * encoding: [0xc0,0x74,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnz FOO +*CHECK: jlnz FOO *CHECK: * encoding: [0xc0,0x74,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnz FOO +*CHECK: jlnz FOO jlnz FOO brnzl FOO *CHECK: * encoding: [0xc0,0x24,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgp FOO +*CHECK: jlp FOO *CHECK: * encoding: [0xc0,0x24,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgp FOO +*CHECK: jlp FOO jlp FOO brpl FOO *CHECK: * encoding: [0xc0,0xd4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnp FOO +*CHECK: jlnp FOO *CHECK: * encoding: [0xc0,0xd4,A,A,A,A] *CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnp FOO +*CHECK: jlnp FOO jlnp FOO brnpl FOO *CHECK: * encoding: [0xc0,0x44,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgm FOO +*CHECK: jlm FOO *CHECK: * encoding: [0xc0,0x44,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgm FOO +*CHECK: jlm FOO jlm FOO brml FOO *CHECK: * encoding: [0xc0,0xb4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnm FOO +*CHECK: jlnm FOO *CHECK: * encoding: [0xc0,0xb4,A,A,A,A] *CHECK: fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jgnm FOO +*CHECK: jlnm FOO jlnm FOO brnml FOO *CHECK: * encoding: [0xc0,0xf4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jg FOO +*CHECK: jlu FOO *CHECK: * encoding: [0xc0,0xf4,A,A,A,A] *CHECK: * fixup A - offset: 2, value: FOO+2, kind: FK_390_PC32DBL -*CHECK: jg FOO +*CHECK: jlu FOO jlu FOO brul FOO _______________________________________________ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
