This revision was automatically updated to reflect the committed changes.
Closed by commit rL248295: [CUDA] Allow function overloads in CUDA based on
host/device attributes. (authored by tra).
Changed prior to commit:
http://reviews.llvm.org/D12453?vs=34368&id=35387#toc
Repository:
rL LLVM
tra updated this revision to Diff 34368.
tra added a comment.
Implemented pcc@'s suggestion to disallow mixing HD and H/D functions.
Removed name mangling as it's no longer needed. Restriction on HD overloading
guarantees that we'll emit only one viable function during particular side of
compila
tra marked 2 inline comments as done.
tra added a comment.
http://reviews.llvm.org/D12453
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
tra updated this revision to Diff 34230.
tra marked 2 inline comments as done.
tra added a comment.
Implementes Richard Smiths' suggestions:
Fixed attribute order in name mangling.
Replaced std::function with template argument.
http://reviews.llvm.org/D12453
Files:
include/clang/Basic/LangOpt
rsmith accepted this revision.
Comment at: lib/AST/ItaniumMangle.cpp:504
@@ +503,3 @@
+ if (FD->hasAttr() && FD->hasAttr())
+Out << "Ua6deviceUa4host";
+
If we have `enable_if` on a `__host__` `__device__` function, I think we should
mangle as `Ua6deviceUa9e
tra updated this revision to Diff 34059.
tra marked 2 inline comments as done.
tra added a comment.
Added more test cases to cover constructor/destructor/new/delete.
Refactored code to remove unwanted CUDA functions from Lookup match results.
Disabled HD overloading of H or H destructors to guaran
rsmith added inline comments.
Comment at: include/clang/Basic/Builtins.h:85
@@ +84,3 @@
+ /// \brief Return true if this function is a target-specific builtin
+ bool isTSBuiltin(unsigned ID) const {
+return ID >= Builtin::FirstTSBuiltin;
I would prefer the m
tra marked 2 inline comments as done.
Comment at: lib/Sema/SemaCUDA.cpp:106
@@ +105,3 @@
+
+ // (a) Can't call global from global until we support dynamic execution.
+ if (CalleeTarget == CFT_Global &&
eliben wrote:
> Not just global from global. global from dev
tra updated the summary for this revision.
tra updated this revision to Diff 33741.
tra marked an inline comment as done.
tra added a comment.
Removed builtin-related changes(http://reviews.llvm.org/D12122). Will commit
them separately.
Added more test cases.
Addressed eliben@'s comments.
http:
eliben accepted this revision.
eliben added a comment.
This revision is now accepted and ready to land.
The CUDA parts look very good. Someone else should approve the
overloading-related logic
Comment at: include/clang/Sema/Sema.h:8605
@@ +8604,3 @@
+
+ CUDAFunctionPreference
tra updated this revision to Diff 33654.
tra marked 2 inline comments as done.
tra added a comment.
addressed eliben@'s comments.
http://reviews.llvm.org/D12453
Files:
include/clang/Basic/Builtins.h
include/clang/Basic/LangOptions.def
include/clang/Driver/CC1Options.td
include/clang/Sem
tra added inline comments.
Comment at: include/clang/Sema/Sema.h:8599
@@ +8598,3 @@
+CFP_Never, // Invalid caller/callee combination.
+CFP_LastResort, // same as CFP_Never or CFP_Fallback, depending on
+// -fcuda-disable-target-call-checks option
-
eliben added inline comments.
Comment at: include/clang/Sema/Sema.h:8599
@@ +8598,3 @@
+CFP_Never, // Invalid caller/callee combination.
+CFP_LastResort, // same as CFP_Never or CFP_Fallback, depending on
+// -fcuda-disable-target-call-checks optio
tra created this revision.
tra added reviewers: eliben, rsmith, jholewinski, echristo, jingyue.
tra added a subscriber: cfe-commits.
The patch makes it possible to parse CUDA files that contain host/device
functions with identical signatures, but different attributes without having
to physicall
14 matches
Mail list logo