15#ifndef LLVM_LIB_TARGET_SYSTEMZ_SYSTEMZELFASMPRINTER_H
16#define LLVM_LIB_TARGET_SYSTEMZ_SYSTEMZELFASMPRINTER_H
27 assert(TS &&
"do not have a target streamer");
49 void emitAttributes(
Module &M);
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
#define LLVM_LIBRARY_VISIBILITY
std::unique_ptr< MCStreamer > && Streamer
return new SystemZELFAsmPrinter(TM, std::move(Streamer))
TargetMachine & TM
Target machine description.
std::unique_ptr< MCStreamer > OutStreamer
This is the MCStreamer object for the file we are generating.
Target specific streamer interface.
Abstract base class for all machine specific constantpool value subclasses.
Representation of each machine instruction.
A Module instance is used to store all the information related to an LLVM module.
SystemZAsmPrinter(TargetMachine &TM, std::unique_ptr< MCStreamer > Streamer)
void emitEndOfAsmFile(Module &M) override
This virtual method can be overridden by targets that want to emit something at the end of their file...
SystemZELFAsmPrinter(TargetMachine &TM, std::unique_ptr< MCStreamer > Streamer)
void emitMachineConstantPoolValue(MachineConstantPoolValue *MCPV) override
void emitInstruction(const MachineInstr *MI) override
Targets should implement this to emit instructions.
Primary interface to the complete machine description for the target machine.
This is an optimization pass for GlobalISel generic memory operations.