[PATCH] D28793: [NVPTX] Auto-upgrade some NVPTX intrinsics to LLVM target-generic code.

Artem Belevich via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 17 14:16:19 PST 2017


tra added inline comments.


================
Comment at: clang/lib/Headers/__clang_cuda_runtime_wrapper.h:124
+}
+inline long long __nvvm_max_i(long long __a, long long __b) {
+  return __a >= __b ? __a : __b;
----------------
Shouldn't that be `_ll` ? That was the name of the max of long long arguments in BuiltinsNVPTX.def.
Speaking of which, it would need to have builtins removed,  too.



================
Comment at: clang/lib/Headers/__clang_cuda_runtime_wrapper.h:127
+}
+inline unsigned long long __nvvm_max_ui(unsigned long long __a,
+                                        unsigned long long __b) {
----------------
_ull?


================
Comment at: clang/lib/Headers/__clang_cuda_runtime_wrapper.h:135
+}
+inline long long __nvvm_min_i(long long __a, long long __b) {
+  return __a < __b ? __a : __b;
----------------
_ll


================
Comment at: clang/lib/Headers/__clang_cuda_runtime_wrapper.h:138
+}
+inline unsigned long long __nvvm_min_ui(unsigned long long __a,
+                                        unsigned long long __b) {
----------------
_ull


================
Comment at: clang/lib/Headers/__clang_cuda_runtime_wrapper.h:142
+}
+inline float __nvvm_h2f(short __a) __asm("llvm.convert.from.fp16");
+
----------------
Do we still need  int_nvvm_h2f in NVPTXIntrinsics.td ?

How about their int_nvvm_f2h* counterparts?


https://reviews.llvm.org/D28793





More information about the llvm-commits mailing list