LLVM  14.0.0git
M68kLegalizerInfo.cpp
Go to the documentation of this file.
1 //===-- M68kLegalizerInfo.cpp ----------------------------------*- 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 /// \file
9 /// This file implements the targeting of the Machinelegalizer class for M68k.
10 //===----------------------------------------------------------------------===//
11 
12 #include "M68kLegalizerInfo.h"
17 #include "llvm/IR/DerivedTypes.h"
18 #include "llvm/IR/Type.h"
19 
20 using namespace llvm;
21 
23  using namespace TargetOpcode;
24  const LLT S32 = LLT::scalar(32);
25  const LLT P0 = LLT::pointer(0, 32);
27  getActionDefinitionsBuilder(G_FRAME_INDEX).legalFor({P0});
33 }
ValueTypes.h
llvm
---------------------— PointerInfo ------------------------------------—
Definition: AllocatorList.h:23
llvm::LegalizerInfo::getActionDefinitionsBuilder
LegalizeRuleSet & getActionDefinitionsBuilder(unsigned Opcode)
Get the action definition builder for the given opcode.
Definition: LegalizerInfo.cpp:290
llvm::LegacyLegalizerInfo::computeTables
void computeTables()
Compute any ancillary tables needed to quickly decide how an operation should be handled.
Definition: LegacyLegalizerInfo.cpp:102
LegalizerInfo.h
TargetOpcodes.h
Type.h
llvm::M68kSubtarget
Definition: M68kSubtarget.h:45
llvm::LLT::pointer
static LLT pointer(unsigned AddressSpace, unsigned SizeInBits)
Get a low-level pointer in the given address space.
Definition: LowLevelTypeImpl.h:50
llvm::LegalizeRuleSet::legalFor
LegalizeRuleSet & legalFor(std::initializer_list< LLT > Types)
The instruction is legal when type index 0 is any type in the given list.
Definition: LegalizerInfo.h:579
llvm::ARM_MB::ST
@ ST
Definition: ARMBaseInfo.h:73
llvm::M68kLegalizerInfo::M68kLegalizerInfo
M68kLegalizerInfo(const M68kSubtarget &ST)
Definition: M68kLegalizerInfo.cpp:22
llvm::LegalizerInfo::getLegacyLegalizerInfo
const LegacyLegalizerInfo & getLegacyLegalizerInfo() const
Definition: LegalizerInfo.h:1114
LegalizerHelper.h
M68kLegalizerInfo.h
DerivedTypes.h
llvm::LLT::scalar
static LLT scalar(unsigned SizeInBits)
Get a low-level scalar or aggregate "bag of bits".
Definition: LowLevelTypeImpl.h:43
llvm::LLT
Definition: LowLevelTypeImpl.h:40