diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-06-24 20:45:01 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-06-24 20:45:01 +0000 |
commit | 56f008d538ba29cbc7118f6412e607323964e5e5 (patch) | |
tree | a19e845bdf186fab071fae3d0804b6c9e44bb1a1 /clang/lib/Basic/Targets.cpp | |
parent | ab175461007fd0c2004cbe1666f190825c47a3dc (diff) | |
download | bcm5719-llvm-56f008d538ba29cbc7118f6412e607323964e5e5.tar.gz bcm5719-llvm-56f008d538ba29cbc7118f6412e607323964e5e5.zip |
Add R600 builtin codegen.
llvm-svn: 211631
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 4fdbc244771..a71e8b0ca32 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -1458,6 +1458,8 @@ static const char *DescriptionStringSI = "-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"; class R600TargetInfo : public TargetInfo { + static const Builtin::Info BuiltinInfo[]; + /// \brief The GPU profiles supported by the R600 target. enum GPUKind { GK_NONE, @@ -1504,11 +1506,10 @@ public: void getTargetBuiltins(const Builtin::Info *&Records, unsigned &NumRecords) const override { - Records = nullptr; - NumRecords = 0; + Records = BuiltinInfo; + NumRecords = clang::R600::LastTSBuiltin - Builtin::FirstTSBuiltin; } - void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override { Builder.defineMacro("__R600__"); @@ -1584,6 +1585,12 @@ public: } }; +const Builtin::Info R600TargetInfo::BuiltinInfo[] = { +#define BUILTIN(ID, TYPE, ATTRS) \ + { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES }, +#include "clang/Basic/BuiltinsR600.def" +}; + } // end anonymous namespace namespace { |