[PATCH] D46131: Add Microsoft Mangling for OpenCL Half Type
Vince Bridgers via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Apr 26 09:38:20 PDT 2018
vbridgers created this revision.
vbridgers added reviewers: rnk, Anastasia, erichkeane.
vbridgers added a project: clang.
Herald added subscribers: cfe-commits, yaxunl.
Half-type mangling is accomplished following the method introduced by Erich Keane for mangling _Float16. Updated the half.cl LIT test to cover this particular case.
Repository:
rC Clang
https://reviews.llvm.org/D46131
Files:
lib/AST/MicrosoftMangle.cpp
test/CodeGenOpenCL/half.cl
Index: test/CodeGenOpenCL/half.cl
===================================================================
--- test/CodeGenOpenCL/half.cl
+++ test/CodeGenOpenCL/half.cl
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 %s -emit-llvm -o - -triple spir-unknown-unknown | FileCheck %s
+// RUN: %clang_cc1 %s -emit-llvm -o - -triple x86_64-pc-win32 | FileCheck %s
#pragma OPENCL EXTENSION cl_khr_fp16 : enable
Index: lib/AST/MicrosoftMangle.cpp
===================================================================
--- lib/AST/MicrosoftMangle.cpp
+++ lib/AST/MicrosoftMangle.cpp
@@ -1922,8 +1922,11 @@
mangleArtificalTagType(TTK_Struct, "_Float16", {"__clang"});
break;
- case BuiltinType::Float128:
- case BuiltinType::Half: {
+ case BuiltinType::Half:
+ mangleArtificalTagType(TTK_Struct, "_Half", {"__clang"});
+ break;
+
+ case BuiltinType::Float128: {
DiagnosticsEngine &Diags = Context.getDiags();
unsigned DiagID = Diags.getCustomDiagID(
DiagnosticsEngine::Error, "cannot mangle this built-in %0 type yet");
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D46131.144139.patch
Type: text/x-patch
Size: 1036 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180426/338b40e4/attachment.bin>
More information about the cfe-commits
mailing list