Thanks to visit codestin.com
Credit goes to llvm.org
LLVM
22.0.0git
include
llvm
Support
MSP430Attributes.h
Go to the documentation of this file.
1
//===-- MSP430Attributes.h - MSP430 Attributes ------------------*- 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
/// \file
10
/// This file contains enumerations for MSP430 ELF build attributes as
11
/// defined in the MSP430 ELF psABI specification.
12
///
13
/// MSP430 ELF psABI specification
14
///
15
/// https://www.ti.com/lit/pdf/slaa534
16
///
17
//===----------------------------------------------------------------------===//
18
#ifndef LLVM_SUPPORT_MSP430ATTRIBUTES_H
19
#define LLVM_SUPPORT_MSP430ATTRIBUTES_H
20
21
#include "
llvm/Support/Compiler.h
"
22
#include "
llvm/Support/ELFAttributes.h
"
23
24
namespace
llvm
{
25
namespace
MSP430Attrs
{
26
27
LLVM_ABI
const
TagNameMap
&
getMSP430AttributeTags
();
28
29
enum
AttrType
:
unsigned
{
30
// Attribute types in ELF/.MSP430.attributes.
31
TagISA
= 4,
32
TagCodeModel
= 6,
33
TagDataModel
= 8,
34
TagEnumSize
= 10
35
};
36
37
enum
ISA
{
ISAMSP430
= 1,
ISAMSP430X
= 2 };
38
enum
CodeModel
{
CMSmall
= 1,
CMLarge
= 2 };
39
enum
DataModel
{
DMSmall
= 1,
DMLarge
= 2,
DMRestricted
= 3 };
40
enum
EnumSize
{
ESSmall
= 1,
ESInteger
= 2,
ESDontCare
= 3 };
41
42
}
// namespace MSP430Attrs
43
}
// namespace llvm
44
45
#endif
Compiler.h
LLVM_ABI
#define LLVM_ABI
Definition
Compiler.h:213
ELFAttributes.h
llvm::MSP430Attrs
Definition
MSP430Attributes.h:25
llvm::MSP430Attrs::EnumSize
EnumSize
Definition
MSP430Attributes.h:40
llvm::MSP430Attrs::ESInteger
@ ESInteger
Definition
MSP430Attributes.h:40
llvm::MSP430Attrs::ESDontCare
@ ESDontCare
Definition
MSP430Attributes.h:40
llvm::MSP430Attrs::ESSmall
@ ESSmall
Definition
MSP430Attributes.h:40
llvm::MSP430Attrs::AttrType
AttrType
Definition
MSP430Attributes.h:29
llvm::MSP430Attrs::TagDataModel
@ TagDataModel
Definition
MSP430Attributes.h:33
llvm::MSP430Attrs::TagEnumSize
@ TagEnumSize
Definition
MSP430Attributes.h:34
llvm::MSP430Attrs::TagISA
@ TagISA
Definition
MSP430Attributes.h:31
llvm::MSP430Attrs::TagCodeModel
@ TagCodeModel
Definition
MSP430Attributes.h:32
llvm::MSP430Attrs::CodeModel
CodeModel
Definition
MSP430Attributes.h:38
llvm::MSP430Attrs::CMLarge
@ CMLarge
Definition
MSP430Attributes.h:38
llvm::MSP430Attrs::CMSmall
@ CMSmall
Definition
MSP430Attributes.h:38
llvm::MSP430Attrs::ISA
ISA
Definition
MSP430Attributes.h:37
llvm::MSP430Attrs::ISAMSP430
@ ISAMSP430
Definition
MSP430Attributes.h:37
llvm::MSP430Attrs::ISAMSP430X
@ ISAMSP430X
Definition
MSP430Attributes.h:37
llvm::MSP430Attrs::getMSP430AttributeTags
LLVM_ABI const TagNameMap & getMSP430AttributeTags()
Definition
MSP430Attributes.cpp:20
llvm::MSP430Attrs::DataModel
DataModel
Definition
MSP430Attributes.h:39
llvm::MSP430Attrs::DMLarge
@ DMLarge
Definition
MSP430Attributes.h:39
llvm::MSP430Attrs::DMRestricted
@ DMRestricted
Definition
MSP430Attributes.h:39
llvm::MSP430Attrs::DMSmall
@ DMSmall
Definition
MSP430Attributes.h:39
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition
AddressRanges.h:18
llvm::TagNameMap
ArrayRef< TagNameItem > TagNameMap
Definition
ELFAttributes.h:25
Generated on
for LLVM by
1.14.0