LLVM API Documentation

Public Member Functions
llvm::Mips16TargetLowering Class Reference

#include <Mips16ISelLowering.h>

Inheritance diagram for llvm::Mips16TargetLowering:
Inheritance graph
[legend]
Collaboration diagram for llvm::Mips16TargetLowering:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Mips16TargetLowering (MipsTargetMachine &TM, const MipsSubtarget &STI)
bool allowsMisalignedMemoryAccesses (EVT VT, unsigned AddrSpace, unsigned Align, bool *Fast) const override
 Determine if the target supports unaligned memory accesses.
MachineBasicBlockEmitInstrWithCustomInserter (MachineInstr *MI, MachineBasicBlock *MBB) const override

Detailed Description

Definition at line 20 of file Mips16ISelLowering.h.


Constructor & Destructor Documentation


Member Function Documentation

bool Mips16TargetLowering::allowsMisalignedMemoryAccesses ( EVT  ,
unsigned  AddrSpace,
unsigned  Align,
bool  
) const [override, virtual]

Determine if the target supports unaligned memory accesses.

This function returns true if the target allows unaligned memory accesses of the specified type in the given address space. If true, it also returns whether the unaligned memory access is "fast" in the last argument by reference. This is used, for example, in situations where an array copy/move/set is converted to a sequence of store operations. Its use helps to ensure that such replacements don't generate code that causes an alignment error (trap) on the target machine.

Reimplemented from llvm::TargetLoweringBase.

Definition at line 162 of file Mips16ISelLowering.cpp.

This method should be implemented by targets that mark instructions with the 'usesCustomInserter' flag. These instructions are special in various ways, which require special support to insert. The specified MachineInstr is created but not inserted into any basic blocks, and this method is called to expand it into a sequence of instructions, potentially also creating new basic blocks and control flow.

Reimplemented from llvm::MipsTargetLowering.

Definition at line 170 of file Mips16ISelLowering.cpp.

References llvm::MachineInstr::getOpcode().


The documentation for this class was generated from the following files: