LLVM 20.0.0git
Macros | Functions
InlineAsmLowering.cpp File Reference

This file implements the lowering from LLVM IR inline asm to MIR INLINEASM. More...

#include "llvm/CodeGen/GlobalISel/InlineAsmLowering.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/IR/Module.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "inline-asm-lowering"
 

Functions

static void getRegistersForValue (MachineFunction &MF, MachineIRBuilder &MIRBuilder, GISelAsmOperandInfo &OpInfo, GISelAsmOperandInfo &RefOpInfo)
 Assign virtual/physical registers for the specified register operand.
 
static void computeConstraintToUse (const TargetLowering *TLI, TargetLowering::AsmOperandInfo &OpInfo)
 
static unsigned getNumOpRegs (const MachineInstr &I, unsigned OpIdx)
 
static bool buildAnyextOrCopy (Register Dst, Register Src, MachineIRBuilder &MIRBuilder)
 

Detailed Description

This file implements the lowering from LLVM IR inline asm to MIR INLINEASM.

Definition in file InlineAsmLowering.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "inline-asm-lowering"

Definition at line 21 of file InlineAsmLowering.cpp.

Function Documentation

◆ buildAnyextOrCopy()

static bool buildAnyextOrCopy ( Register  Dst,
Register  Src,
MachineIRBuilder MIRBuilder 
)
static

◆ computeConstraintToUse()

static void computeConstraintToUse ( const TargetLowering TLI,
TargetLowering::AsmOperandInfo OpInfo 
)
static

◆ getNumOpRegs()

static unsigned getNumOpRegs ( const MachineInstr I,
unsigned  OpIdx 
)
static

Definition at line 177 of file InlineAsmLowering.cpp.

References F, and I.

Referenced by llvm::InlineAsmLowering::lowerInlineAsm().

◆ getRegistersForValue()

static void getRegistersForValue ( MachineFunction MF,
MachineIRBuilder MIRBuilder,
GISelAsmOperandInfo &  OpInfo,
GISelAsmOperandInfo &  RefOpInfo 
)
static