diff options
Diffstat (limited to 'sys-devel/clang/files/cl-patches')
5 files changed, 0 insertions, 333 deletions
diff --git a/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch b/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch deleted file mode 100644 index 929b5d3..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 70cae83ffd093f183dec07c464db3c0bb6b92c10 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Fri, 2 Mar 2012 10:54:52 -0500 -Subject: [PATCH 1/3] Add r600 TargetInfo - ---- - lib/Basic/Targets.cpp | 70 +++++++++++++++++++++++++++++++++++++++++++++++++ - 1 files changed, 70 insertions(+), 0 deletions(-) - -diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp -index 85dfd78..64dc01c 100644 ---- a/lib/Basic/Targets.cpp -+++ b/lib/Basic/Targets.cpp -@@ -1068,6 +1068,73 @@ namespace { - } - - namespace { -+ -+class AMDGPUTargetInfo : public TargetInfo { -+public: -+ -+ AMDGPUTargetInfo(const std::string& triple) : TargetInfo(triple) { } -+ -+ virtual const char * getClobbers() const { -+ return ""; -+ } -+ -+ virtual void getGCCRegNames(const char * const *&Names, -+ unsigned &numNames) const { -+ Names = NULL; -+ numNames = 0; -+ } -+ -+ virtual void getGCCRegAliases(const GCCRegAlias *&Aliases, -+ unsigned &NumAliases) const { -+ Aliases = NULL; -+ NumAliases = 0; -+ } -+ -+ virtual bool validateAsmConstraint(const char *&Name, -+ TargetInfo::ConstraintInfo &info) const { -+ return true; -+ } -+ -+ virtual void getTargetBuiltins(const Builtin::Info *&Records, -+ unsigned &NumRecords) const { -+ Records = NULL; -+ NumRecords = 0; -+ } -+}; -+ -+ -+static const unsigned R600AddrSpaceMap[] = { -+ 1, // opencl_global -+ 3, // opencl_local -+ 2 // opencl_constant -+}; -+ -+class R600TargetInfo : public AMDGPUTargetInfo { -+public: -+ R600TargetInfo(const std::string& triple) : AMDGPUTargetInfo(triple) { -+ DescriptionString = -+ "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16" -+ "-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f80:32:32" -+ "-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64" -+ "-v96:128:128-v128:128:128-v192:256:256-v256:256:256" -+ "-v512:512:512-v1024:1024:1024-v2048:2048:2048" -+ "-n8:16:32:64"; -+ AddrSpaceMap = &R600AddrSpaceMap; -+ } -+ -+ virtual void getTargetDefines(const LangOptions &Opts, -+ MacroBuilder &Builder) const { -+ Builder.defineMacro("__R600__"); -+ } -+ -+ virtual const char * getVAListDeclaration() const { -+ return ""; -+ } -+}; -+ -+} // end anonymous namespace -+ -+namespace { - // MBlaze abstract base class - class MBlazeTargetInfo : public TargetInfo { - static const char * const GCCRegNames[]; -@@ -3963,6 +4030,9 @@ static TargetInfo *AllocateTarget(const std::string &T) { - case llvm::Triple::mblaze: - return new MBlazeTargetInfo(T); - -+ case llvm::Triple::r600: -+ return new R600TargetInfo(T); -+ - case llvm::Triple::sparc: - switch (os) { - case llvm::Triple::Linux: --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch b/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch deleted file mode 100644 index 0003a8d..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch +++ /dev/null @@ -1,111 +0,0 @@ -From a014573ad193775b2301e39275a1ca0ac3bb5847 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Tue, 13 Mar 2012 13:54:51 -0400 -Subject: [PATCH 2/3] r600: Add some target builtins - ---- - include/clang/Basic/BuiltinsR600.def | 32 ++++++++++++++++++++++++++++++++ - include/clang/Basic/TargetBuiltins.h | 10 ++++++++++ - lib/Basic/Targets.cpp | 12 ++++++++++-- - 3 files changed, 52 insertions(+), 2 deletions(-) - create mode 100644 include/clang/Basic/BuiltinsR600.def - -diff --git a/include/clang/Basic/BuiltinsR600.def b/include/clang/Basic/BuiltinsR600.def -new file mode 100644 -index 0000000..ce1f30e ---- /dev/null -+++ b/include/clang/Basic/BuiltinsR600.def -@@ -0,0 +1,32 @@ -+//===--- BuiltinsR600.def - R600 Builtin function database -- --*- C++ -*-===// -+// -+// The LLVM Compiler Infrastructure -+// -+// This file is distributed under the University of Illinois Open Source -+// License. See LICENSE.TXT for details. -+// -+//===----------------------------------------------------------------------===// -+// -+// This file defines the R600-specific builtin function database. Users of -+// this file must define the BUILTIN macro to make use of this information. -+// -+//===----------------------------------------------------------------------===// -+// -+// Authors: Tom Stellard <thomas.stellard@amd.com> -+// -+ -+// The format of this database matches clang/Basic/Builtins.def. -+ -+BUILTIN(__builtin_r600_read_ngroups_x, "z", "nc") -+BUILTIN(__builtin_r600_read_ngroups_y, "z", "nc") -+BUILTIN(__builtin_r600_read_ngroups_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_tidig_x, "z", "nc") -+BUILTIN(__builtin_r600_read_tidig_y, "z", "nc") -+BUILTIN(__builtin_r600_read_tidig_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_tgid_x, "z", "nc") -+BUILTIN(__builtin_r600_read_tgid_y, "z", "nc") -+BUILTIN(__builtin_r600_read_tgid_z, "z", "nc") -+ -+#undef BUILTIN -diff --git a/include/clang/Basic/TargetBuiltins.h b/include/clang/Basic/TargetBuiltins.h -index 7c04bf7..3460cd5 100644 ---- a/include/clang/Basic/TargetBuiltins.h -+++ b/include/clang/Basic/TargetBuiltins.h -@@ -45,6 +45,16 @@ namespace clang { - }; - } - -+ /// R600 builtins -+ namespace R600 { -+ enum { -+ LastTIBuiltin = clang::Builtin::FirstTSBuiltin-1, -+#define BUILTIN(ID, TYPE, ATTRS) BI##ID, -+#include "clang/Basic/BuiltinsR600.def" -+ LastTSBuiltin -+ }; -+ } -+ - - /// X86 builtins - namespace X86 { -diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp -index 64dc01c..03f1a18 100644 ---- a/lib/Basic/Targets.cpp -+++ b/lib/Basic/Targets.cpp -@@ -1070,6 +1070,7 @@ namespace { - namespace { - - class AMDGPUTargetInfo : public TargetInfo { -+ static const Builtin::Info BuiltinInfo[]; - public: - - AMDGPUTargetInfo(const std::string& triple) : TargetInfo(triple) { } -@@ -1097,8 +1098,8 @@ public: - - virtual void getTargetBuiltins(const Builtin::Info *&Records, - unsigned &NumRecords) const { -- Records = NULL; -- NumRecords = 0; -+ Records = BuiltinInfo; -+ NumRecords = clang::R600::LastTSBuiltin-Builtin::FirstTSBuiltin; - } - }; - -@@ -1132,6 +1133,13 @@ public: - } - }; - -+const Builtin::Info AMDGPUTargetInfo::BuiltinInfo[] = { -+#define BUILTIN(ID, TYPE, ATTRS) { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES }, -+#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER) { #ID, TYPE, ATTRS, HEADER,\ -+ ALL_LANGUAGES }, -+#include "clang/Basic/BuiltinsR600.def" -+}; -+ - } // end anonymous namespace - - namespace { --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch b/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch deleted file mode 100644 index e0c2d3b..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 2881b8189dcacc8ab6a336f0e107d72752c8c47e Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Wed, 14 Mar 2012 11:20:08 -0400 -Subject: [PATCH 3/3] r600: Add read_global_size and read_local_size builtins - ---- - include/clang/Basic/BuiltinsR600.def | 8 ++++++++ - 1 files changed, 8 insertions(+), 0 deletions(-) - -diff --git a/include/clang/Basic/BuiltinsR600.def b/include/clang/Basic/BuiltinsR600.def -index ce1f30e..c81758e 100644 ---- a/include/clang/Basic/BuiltinsR600.def -+++ b/include/clang/Basic/BuiltinsR600.def -@@ -17,6 +17,14 @@ - - // The format of this database matches clang/Basic/Builtins.def. - -+BUILTIN(__builtin_r600_read_global_size_x, "z", "nc") -+BUILTIN(__builtin_r600_read_global_size_y, "z", "nc") -+BUILTIN(__builtin_r600_read_global_size_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_local_size_x, "z", "nc") -+BUILTIN(__builtin_r600_read_local_size_y, "z", "nc") -+BUILTIN(__builtin_r600_read_local_size_z, "z", "nc") -+ - BUILTIN(__builtin_r600_read_ngroups_x, "z", "nc") - BUILTIN(__builtin_r600_read_ngroups_y, "z", "nc") - BUILTIN(__builtin_r600_read_ngroups_z, "z", "nc") --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch b/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch deleted file mode 100644 index 9d99c9c..0000000 --- a/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch +++ /dev/null @@ -1,64 +0,0 @@ -From e25389b66b5ced3a2b5461077dcc9a505d334e3d Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Tue, 13 Mar 2012 14:12:21 -0400 -Subject: [PATCH 1/2] r600: Add some intrinsic definitions - ---- - include/llvm/Intrinsics.td | 1 + - include/llvm/IntrinsicsR600.td | 35 +++++++++++++++++++++++++++++++++++ - 2 files changed, 36 insertions(+), 0 deletions(-) - create mode 100644 include/llvm/IntrinsicsR600.td - -diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td -index 069f907..e90dd85 100644 ---- a/include/llvm/Intrinsics.td -+++ b/include/llvm/Intrinsics.td -@@ -441,3 +441,4 @@ include "llvm/IntrinsicsCellSPU.td" - include "llvm/IntrinsicsXCore.td" - include "llvm/IntrinsicsPTX.td" - include "llvm/IntrinsicsHexagon.td" -+include "llvm/IntrinsicsR600.td" -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -new file mode 100644 -index 0000000..789fecb ---- /dev/null -+++ b/include/llvm/IntrinsicsR600.td -@@ -0,0 +1,35 @@ -+//===- IntrinsicsR600.td - Defines R600 intrinsics ---------*- tablegen -*-===// -+// -+// The LLVM Compiler Infrastructure -+// -+// This file is distributed under the University of Illinois Open Source -+// License. See LICENSE.TXT for details. -+// -+//===----------------------------------------------------------------------===// -+// -+// This file defines all of the R600-specific intrinsics. -+// -+//===----------------------------------------------------------------------===// -+// -+// Authors: Tom Stellard <thomas.stellard@amd.com> -+// -+ -+let TargetPrefix = "r600" in { -+ -+class R600ReadPreloadRegisterIntrinsic<string name> -+ : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>, -+ GCCBuiltin<name>; -+ -+multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { -+ def _x : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_x")>; -+ def _y : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_y")>; -+ def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; -+} -+ -+defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_ngroups">; -+defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tgid">; -+defm int_r600_read_tidig : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tidig">; -+} // End TargetPrefix = "r600" --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch b/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch deleted file mode 100644 index db176dd..0000000 --- a/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 17667fa3450470f7c89fc2ba4631d908cf510749 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Wed, 14 Mar 2012 11:19:35 -0400 -Subject: [PATCH 2/2] r600: Add get_global_size and get_local_size intrinsics - ---- - include/llvm/IntrinsicsR600.td | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -index 789fecb..0473acb 100644 ---- a/include/llvm/IntrinsicsR600.td -+++ b/include/llvm/IntrinsicsR600.td -@@ -26,6 +26,10 @@ multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { - def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; - } - -+defm int_r600_read_global_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_global_size">; -+defm int_r600_read_local_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_local_size">; - defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < - "__builtin_r600_read_ngroups">; - defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < --- -1.7.7.6 - |