1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | #include "Le64.h" |
14 | #include "Targets.h" |
15 | #include "clang/Basic/Builtins.h" |
16 | #include "clang/Basic/MacroBuilder.h" |
17 | #include "clang/Basic/TargetBuiltins.h" |
18 | |
19 | using namespace clang; |
20 | using namespace clang::targets; |
21 | |
22 | const Builtin::Info Le64TargetInfo::BuiltinInfo[] = { |
23 | #define BUILTIN(ID, TYPE, ATTRS) \ |
24 | {#ID, TYPE, ATTRS, nullptr, ALL_LANGUAGES, nullptr}, |
25 | #include "clang/Basic/BuiltinsLe64.def" |
26 | }; |
27 | |
28 | ArrayRef<Builtin::Info> Le64TargetInfo::getTargetBuiltins() const { |
29 | return llvm::makeArrayRef(BuiltinInfo, clang::Le64::LastTSBuiltin - |
30 | Builtin::FirstTSBuiltin); |
31 | } |
32 | |
33 | void Le64TargetInfo::getTargetDefines(const LangOptions &Opts, |
34 | MacroBuilder &Builder) const { |
35 | DefineStd(Builder, "unix", Opts); |
36 | defineCPUMacros(Builder, "le64", ); |
37 | Builder.defineMacro("__ELF__"); |
38 | } |
39 | |