LLVM 23.0.0git
MSP430.h
Go to the documentation of this file.
1//==-- MSP430.h - Top-level interface for MSP430 representation --*- C++ -*-==//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file contains the entry points for global functions defined in
10// the LLVM MSP430 backend.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_LIB_TARGET_MSP430_MSP430_H
15#define LLVM_LIB_TARGET_MSP430_MSP430_H
16
20#include "llvm/IR/Analysis.h"
21#include "llvm/IR/PassManager.h"
23
24namespace MSP430CC {
25 // MSP430 specific condition code.
26 enum CondCodes {
27 COND_E = 0, // aka COND_Z
28 COND_NE = 1, // aka COND_NZ
29 COND_HS = 2, // aka COND_C
30 COND_LO = 3, // aka COND_NC
32 COND_L = 5,
33 COND_N = 6, // jump if negative
34 COND_NONE, // unconditional
35
37 };
38}
39
40namespace llvm {
41class FunctionPass;
43class PassRegistry;
44
49
51 CodeGenOptLevel OptLevel);
52
53class MSP430BranchSelectPass : public PassInfoMixin<MSP430BranchSelectPass> {
54public:
57};
58
60
63
64} // namespace llvm
65
66#endif
This header defines various interfaces for pass management in LLVM.
FunctionPass class - This class is used to implement most global optimizations.
Definition Pass.h:314
PreservedAnalyses run(MachineFunction &MF, MachineFunctionAnalysisManager &MFAM)
MSP430ISelDAGToDAGPass(MSP430TargetMachine &TM, CodeGenOptLevel OptLevel)
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
A set of analyses that are preserved following a run of a transformation pass.
Definition Analysis.h:112
SelectionDAGISelPass(std::unique_ptr< SelectionDAGISel > Selector)
Pass manager infrastructure for declaring and invalidating analyses.
CondCodes
Definition MSP430.h:26
@ COND_LO
Definition MSP430.h:30
@ COND_N
Definition MSP430.h:33
@ COND_L
Definition MSP430.h:32
@ COND_INVALID
Definition MSP430.h:36
@ COND_E
Definition MSP430.h:27
@ COND_GE
Definition MSP430.h:31
@ COND_NONE
Definition MSP430.h:34
@ COND_NE
Definition MSP430.h:28
@ COND_HS
Definition MSP430.h:29
This is an optimization pass for GlobalISel generic memory operations.
AnalysisManager< MachineFunction > MachineFunctionAnalysisManager
void initializeMSP430DAGToDAGISelLegacyPass(PassRegistry &)
CodeGenOptLevel
Code generation optimization level.
Definition CodeGen.h:82
void initializeMSP430AsmPrinterPass(PassRegistry &)
FunctionPass * createMSP430BranchSelectLegacyPass()
Returns an instance of the Branch Selection Pass.
FunctionPass * createMSP430ISelDag(MSP430TargetMachine &TM, CodeGenOptLevel OptLevel)
createMSP430ISelDag - This pass converts a legalized DAG into a MSP430-specific DAG,...
A CRTP mix-in to automatically provide informational APIs needed for passes.
Definition PassManager.h:89