LLVM 20.0.0git
|
#include "LoongArch.h"
#include "LoongArchTargetMachine.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/Debug.h"
#include "llvm/Target/TargetOptions.h"
#include <optional>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "loongarch-merge-base-offset" |
#define | LoongArch_MERGE_BASE_OFFSET_NAME "LoongArch Merge Base Offset" |
Functions | |
INITIALIZE_PASS (LoongArchMergeBaseOffsetOpt, DEBUG_TYPE, LoongArch_MERGE_BASE_OFFSET_NAME, false, false) bool LoongArchMergeBaseOffsetOpt | |
static unsigned | getNewOpc (unsigned Op, bool isLarge) |
#define DEBUG_TYPE "loongarch-merge-base-offset" |
Definition at line 25 of file LoongArchMergeBaseOffset.cpp.
#define LoongArch_MERGE_BASE_OFFSET_NAME "LoongArch Merge Base Offset" |
Definition at line 26 of file LoongArchMergeBaseOffset.cpp.
Definition at line 362 of file LoongArchMergeBaseOffset.cpp.
References llvm_unreachable.
INITIALIZE_PASS | ( | LoongArchMergeBaseOffsetOpt | , |
DEBUG_TYPE | , | ||
LoongArch_MERGE_BASE_OFFSET_NAME | , | ||
false | , | ||
false | |||
) |
Definition at line 75 of file LoongArchMergeBaseOffset.cpp.
References assert(), llvm::dbgs(), llvm::MachineOperand::getBlockAddress(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getIndex(), llvm::MachineOperand::getOffset(), llvm::MachineInstr::getOpcode(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::isBlockAddress(), llvm::MachineOperand::isCPI(), llvm::MachineOperand::isGlobal(), llvm::MachineOperand::isMCSymbol(), llvm::Register::isVirtual(), llvm::Last, LLVM_DEBUG, llvm::LoongArchII::MO_PCREL64_HI, llvm::LoongArchII::MO_PCREL64_LO, llvm::LoongArchII::MO_PCREL_HI, llvm::LoongArchII::MO_PCREL_LO, and MRI.