LLVM API Documentation

ARMAddressingModes.h File Reference

#include "llvm/CodeGen/SelectionDAGNodes.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>

Include dependency graph for ARMAddressingModes.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  llvm
namespace  llvm::ARM_AM

Enumerations

enum  llvm::ARM_AM::ShiftOpc {
  llvm::ARM_AM::no_shift = 0, llvm::ARM_AM::asr, llvm::ARM_AM::lsl, llvm::ARM_AM::lsr,
  llvm::ARM_AM::ror, llvm::ARM_AM::rrx
}
enum  llvm::ARM_AM::AddrOpc { llvm::ARM_AM::add = '+', llvm::ARM_AM::sub = '-' }
enum  llvm::ARM_AM::AMSubMode {
  llvm::ARM_AM::bad_am_submode = 0, llvm::ARM_AM::ia, llvm::ARM_AM::ib, llvm::ARM_AM::da,
  llvm::ARM_AM::db
}

Functions

static const char * llvm::ARM_AM::getShiftOpcStr (ShiftOpc Op)
static ShiftOpc llvm::ARM_AM::getShiftOpcForNode (SDValue N)
static const char * llvm::ARM_AM::getAMSubModeStr (AMSubMode Mode)
static const char * llvm::ARM_AM::getAMSubModeAltStr (AMSubMode Mode, bool isLD)
static unsigned llvm::ARM_AM::rotr32 (unsigned Val, unsigned Amt)
static unsigned llvm::ARM_AM::rotl32 (unsigned Val, unsigned Amt)
static unsigned llvm::ARM_AM::getSORegOpc (ShiftOpc ShOp, unsigned Imm)
static unsigned llvm::ARM_AM::getSORegOffset (unsigned Op)
static ShiftOpc llvm::ARM_AM::getSORegShOp (unsigned Op)
static unsigned llvm::ARM_AM::getSOImmValImm (unsigned Imm)
static unsigned llvm::ARM_AM::getSOImmValRot (unsigned Imm)
static unsigned llvm::ARM_AM::getSOImmValRotate (unsigned Imm)
static int llvm::ARM_AM::getSOImmVal (unsigned Arg)
static bool llvm::ARM_AM::isSOImmTwoPartVal (unsigned V)
static unsigned llvm::ARM_AM::getSOImmTwoPartFirst (unsigned V)
static unsigned llvm::ARM_AM::getSOImmTwoPartSecond (unsigned V)
static unsigned llvm::ARM_AM::getThumbImmValShift (unsigned Imm)
static bool llvm::ARM_AM::isThumbImmShiftedVal (unsigned V)
static unsigned llvm::ARM_AM::getThumbImmNonShiftedVal (unsigned V)
static unsigned llvm::ARM_AM::getAM2Opc (AddrOpc Opc, unsigned Imm12, ShiftOpc SO)
static unsigned llvm::ARM_AM::getAM2Offset (unsigned AM2Opc)
static AddrOpc llvm::ARM_AM::getAM2Op (unsigned AM2Opc)
static ShiftOpc llvm::ARM_AM::getAM2ShiftOpc (unsigned AM2Opc)
static unsigned llvm::ARM_AM::getAM3Opc (AddrOpc Opc, unsigned char Offset)
 getAM3Opc - This function encodes the addrmode3 opc field.
static unsigned char llvm::ARM_AM::getAM3Offset (unsigned AM3Opc)
static AddrOpc llvm::ARM_AM::getAM3Op (unsigned AM3Opc)
static AMSubMode llvm::ARM_AM::getAM4SubMode (unsigned Mode)
static unsigned llvm::ARM_AM::getAM4ModeImm (AMSubMode SubMode, bool WB=false)
static bool llvm::ARM_AM::getAM4WBFlag (unsigned Mode)
static unsigned llvm::ARM_AM::getAM5Opc (AddrOpc Opc, unsigned char Offset)
 getAM5Opc - This function encodes the addrmode5 opc field.
static unsigned char llvm::ARM_AM::getAM5Offset (unsigned AM5Opc)
static AddrOpc llvm::ARM_AM::getAM5Op (unsigned AM5Opc)
static unsigned llvm::ARM_AM::getAM5Opc (AMSubMode SubMode, bool WB, unsigned char Offset)
static AMSubMode llvm::ARM_AM::getAM5SubMode (unsigned AM5Opc)
static bool llvm::ARM_AM::getAM5WBFlag (unsigned AM5Opc)