Skip to content

Commit a86d5b9

Browse files
committed
Add some more tests and targets
1 parent e288df6 commit a86d5b9

19 files changed

+45
-10
lines changed

llvm/lib/Target/AMDGPU/AMDGPU.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,8 @@ void initializeAMDGPUDAGToDAGISelLegacyPass(PassRegistry &);
9595

9696
void initializeAMDGPUAlwaysInlinePass(PassRegistry&);
9797

98+
void initializeAMDGPUAsmPrinterPass(PassRegistry &);
99+
98100
Pass *createAMDGPUAttributorLegacyPass();
99101
void initializeAMDGPUAttributorLegacyPass(PassRegistry &);
100102

llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1743,3 +1743,8 @@ void AMDGPUAsmPrinter::emitResourceUsageRemarks(
17431743
EmitResourceUsageRemark("BytesLDS", "LDS Size [bytes/block]",
17441744
CurrentProgramInfo.LDSSize);
17451745
}
1746+
1747+
char AMDGPUAsmPrinter::ID = 0;
1748+
1749+
INITIALIZE_PASS(AMDGPUAsmPrinter, "amdgpu-asm-printer",
1750+
"AMDGPU Assembly Printer", false, false)

llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ class MetadataStreamer;
3636
} // namespace AMDGPU
3737

3838
class AMDGPUAsmPrinter final : public AsmPrinter {
39+
public:
40+
static char ID;
41+
3942
private:
4043
unsigned CodeObjectVersion;
4144
void initializeTargetID(const Module &M);

llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAMDGPUTarget() {
495495
initializeR600EmitClauseMarkersPass(*PR);
496496
initializeR600MachineCFGStructurizerPass(*PR);
497497
initializeGlobalISel(*PR);
498+
initializeAMDGPUAsmPrinterPass(*PR);
498499
initializeAMDGPUDAGToDAGISelLegacyPass(*PR);
499500
initializeGCNDPPCombineLegacyPass(*PR);
500501
initializeSILowerI1CopiesLegacyPass(*PR);

llvm/lib/Target/RISCV/RISCV.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,8 @@ void initializeRISCVVLOptimizerPass(PassRegistry &);
116116

117117
FunctionPass *createRISCVVMV0EliminationPass();
118118
void initializeRISCVVMV0EliminationPass(PassRegistry &);
119+
120+
void initializeRISCVAsmPrinterPass(PassRegistry &);
119121
} // namespace llvm
120122

121123
#endif

llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,16 @@ extern const SubtargetFeatureKV RISCVFeatureKV[RISCV::NumSubtargetFeatures];
5555

5656
namespace {
5757
class RISCVAsmPrinter : public AsmPrinter {
58+
public:
59+
static char ID;
60+
61+
private:
5862
const RISCVSubtarget *STI;
5963

6064
public:
6165
explicit RISCVAsmPrinter(TargetMachine &TM,
6266
std::unique_ptr<MCStreamer> Streamer)
63-
: AsmPrinter(TM, std::move(Streamer)) {}
67+
: AsmPrinter(TM, std::move(Streamer), ID) {}
6468

6569
StringRef getPassName() const override { return "RISC-V Assembly Printer"; }
6670

@@ -1210,3 +1214,8 @@ void RISCVAsmPrinter::emitMachineConstantPoolValue(
12101214
uint64_t Size = getDataLayout().getTypeAllocSize(RCPV->getType());
12111215
OutStreamer->emitValue(Expr, Size);
12121216
}
1217+
1218+
char RISCVAsmPrinter::ID = 0;
1219+
1220+
INITIALIZE_PASS(RISCVAsmPrinter, "riscv-asm-printer",
1221+
"RISC-V Assembly Printer", false, false)

llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeRISCVTarget() {
149149
initializeRISCVLoadStoreOptPass(*PR);
150150
initializeRISCVExpandAtomicPseudoPass(*PR);
151151
initializeRISCVRedundantCopyEliminationPass(*PR);
152+
initializeRISCVAsmPrinterPass(*PR);
152153
}
153154

154155
static StringRef computeDataLayout(const Triple &TT,

llvm/lib/Target/WebAssembly/WebAssembly.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ void initializeOptimizeReturnedPass(PassRegistry &);
6464
void initializeWebAssemblyRefTypeMem2LocalPass(PassRegistry &);
6565
void initializeWebAssemblyAddMissingPrototypesPass(PassRegistry &);
6666
void initializeWebAssemblyArgumentMovePass(PassRegistry &);
67+
void initializeWebAssemblyAsmPrinterPass(PassRegistry &);
6768
void initializeWebAssemblyCleanCodeAfterTrapPass(PassRegistry &);
6869
void initializeWebAssemblyCFGSortPass(PassRegistry &);
6970
void initializeWebAssemblyCFGStackifyPass(PassRegistry &);

llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include "MCTargetDesc/WebAssemblyTargetStreamer.h"
2020
#include "TargetInfo/WebAssemblyTargetInfo.h"
2121
#include "Utils/WebAssemblyTypeUtilities.h"
22+
#include "WebAssembly.h"
2223
#include "WebAssemblyMCInstLower.h"
2324
#include "WebAssemblyMachineFunctionInfo.h"
2425
#include "WebAssemblyRegisterInfo.h"
@@ -752,6 +753,11 @@ bool WebAssemblyAsmPrinter::PrintAsmMemoryOperand(const MachineInstr *MI,
752753
return AsmPrinter::PrintAsmMemoryOperand(MI, OpNo, ExtraCode, OS);
753754
}
754755

756+
char WebAssemblyAsmPrinter::ID = 0;
757+
758+
INITIALIZE_PASS(WebAssemblyAsmPrinter, "webassembly-asm-printer",
759+
"WebAssembly Assmebly Printer", false, false)
760+
755761
// Force static initialization.
756762
extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeWebAssemblyAsmPrinter() {
757763
RegisterAsmPrinter<WebAssemblyAsmPrinter> X(getTheWebAssemblyTarget32());

llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ namespace llvm {
1919
class WebAssemblyTargetStreamer;
2020

2121
class LLVM_LIBRARY_VISIBILITY WebAssemblyAsmPrinter final : public AsmPrinter {
22+
public:
23+
static char ID;
24+
25+
private:
2226
const WebAssemblySubtarget *Subtarget;
2327
const MachineRegisterInfo *MRI;
2428
WebAssemblyFunctionInfo *MFI;
@@ -27,7 +31,7 @@ class LLVM_LIBRARY_VISIBILITY WebAssemblyAsmPrinter final : public AsmPrinter {
2731
public:
2832
explicit WebAssemblyAsmPrinter(TargetMachine &TM,
2933
std::unique_ptr<MCStreamer> Streamer)
30-
: AsmPrinter(TM, std::move(Streamer)), Subtarget(nullptr), MRI(nullptr),
34+
: AsmPrinter(TM, std::move(Streamer), ID), Subtarget(nullptr), MRI(nullptr),
3135
MFI(nullptr) {}
3236

3337
StringRef getPassName() const override {

llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeWebAssemblyTarget() {
6969
initializeOptimizeReturnedPass(PR);
7070
initializeWebAssemblyRefTypeMem2LocalPass(PR);
7171
initializeWebAssemblyArgumentMovePass(PR);
72+
initializeWebAssemblyAsmPrinterPass(PR);
7273
initializeWebAssemblySetP2AlignOperandsPass(PR);
7374
initializeWebAssemblyReplacePhysRegsPass(PR);
7475
initializeWebAssemblyOptimizeLiveIntervalsPass(PR);

llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -start-after=livedebugvalues -verify-machineinstrs -o - %s | FileCheck -check-prefix=GCN %s
1+
# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -start-before=amdgpu-asm-printer -verify-machineinstrs -o - %s | FileCheck -check-prefix=GCN %s
22

33
# GCN-LABEL: foo:
44
# GCN: s_getpc_b64 vcc

llvm/test/CodeGen/RISCV/instruction-count-remark.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -mtriple=riscv32 -verify-machineinstrs -start-before=riscv-expand-pseudo -simplify-mir -o /dev/null -pass-remarks-analysis=asm-printer %s 2>&1 | FileCheck %s
1+
# RUN: llc -mtriple=riscv32 -verify-machineinstrs -start-before=riscv-asm-printer -simplify-mir -o /dev/null -pass-remarks-analysis=asm-printer %s 2>&1 | FileCheck %s
22
---
33
name: instrs
44
tracksRegLiveness: true

llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-chain.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -mtriple aarch64-linux-gnu -emit-call-site-info -debug-entry-values -start-after=livedebugvalues -filetype=obj -o - %s \
1+
# RUN: llc -mtriple aarch64-linux-gnu -emit-call-site-info -debug-entry-values -start-before=aarch64-asm-printer -filetype=obj -o - %s \
22
# RUN: | llvm-dwarfdump - | FileCheck %s --implicit-check-not=DW_TAG_GNU_call_site_parameter
33
#
44
# Based on the following C reproducer:

llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -mtriple aarch64-linux-gnu -emit-call-site-info -debug-entry-values -start-after=livedebugvalues -filetype=obj -o - %s \
1+
# RUN: llc -mtriple aarch64-linux-gnu -emit-call-site-info -debug-entry-values -start-before=aarch64-asm-printer -filetype=obj -o - %s \
22
# RUN: | llvm-dwarfdump - | FileCheck %s --implicit-check-not=DW_TAG_GNU_call_site_parameter
33
#
44
# Based on the following C reproducer:

llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-orr-moves.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -emit-call-site-info -start-after=livedebugvalues -filetype=obj -o - %s | llvm-dwarfdump - | FileCheck %s
1+
# RUN: llc -emit-call-site-info -start-before=aarch64-asm-printer -filetype=obj -o - %s | llvm-dwarfdump - | FileCheck %s
22

33
# Based on the following C reproducer:
44
#

llvm/test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -emit-call-site-info -start-after=livedebugvalues -filetype=obj -o - %s \
1+
# RUN: llc -emit-call-site-info -start-before=aarch64-asm-printer -filetype=obj -o - %s \
22
# RUN: | llvm-dwarfdump -v - | FileCheck %s
33

44
# This tests for a crash in DwarfDebug's singular DBG_VALUE range promotion when

llvm/test/DebugInfo/MIR/AArch64/no-dbg-value-after-terminator.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: not --crash llc -mtriple aarch64-linux-gnu -verify-machineinstrs -start-after=livedebugvalues \
1+
# RUN: not --crash llc -mtriple aarch64-linux-gnu -verify-machineinstrs -start-before=aarch64-asm-printer \
22
# RUN: -filetype=obj -o /dev/null %s 2>&1 | FileCheck %s
33

44
# CHECK: *** Bad machine code: Non-terminator instruction after the first terminator ***

llvm/test/DebugInfo/MIR/AArch64/subreg-fragment-overflow.mir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# RUN: llc -mtriple aarch64-linux-gnu -start-after=livedebugvalues -filetype=obj -o - %s \
1+
# RUN: llc -mtriple aarch64-linux-gnu -start-before=aarch64-asm-printer -filetype=obj -o - %s \
22
# RUN: | llvm-dwarfdump - | FileCheck %s
33
# The value needs to be composed of sub-registers, but the
44
# sub-registers cross the fragment boundary.

0 commit comments

Comments
 (0)