diff options
author | dim <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
commit | 3191b2b32a96e1a6ee833fcca73e5c8e0c67ba65 (patch) | |
tree | dbbd4047878da71c1a706e26ce05b4e7791b14cc /test/CodeGenCXX/lvalue-bitcasts.cpp | |
parent | 38d6f2e7f2ce51a5b3836d26596c6c34a3288752 (diff) | |
download | FreeBSD-src-3191b2b32a96e1a6ee833fcca73e5c8e0c67ba65.zip FreeBSD-src-3191b2b32a96e1a6ee833fcca73e5c8e0c67ba65.tar.gz |
Vendor import of clang trunk r238337:
https://llvm.org/svn/llvm-project/cfe/trunk@238337
Diffstat (limited to 'test/CodeGenCXX/lvalue-bitcasts.cpp')
-rw-r--r-- | test/CodeGenCXX/lvalue-bitcasts.cpp | 90 |
1 files changed, 45 insertions, 45 deletions
diff --git a/test/CodeGenCXX/lvalue-bitcasts.cpp b/test/CodeGenCXX/lvalue-bitcasts.cpp index 86355b2..c9997bf 100644 --- a/test/CodeGenCXX/lvalue-bitcasts.cpp +++ b/test/CodeGenCXX/lvalue-bitcasts.cpp @@ -5,90 +5,90 @@ struct Y { X x; }; // CHECK-LABEL: define void @_Z21reinterpret_cast_testRiRfR1X void reinterpret_cast_test(int &ir, float &fr, X &xr) { - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load i32* + // CHECK: load i32, i32* ir = reinterpret_cast<int&>(fr); // CHECK: load // CHECK: {{bitcast.*to i32\*}} - // CHECK: load i32* + // CHECK: load i32, i32* ir = reinterpret_cast<int&>(xr); // CHECK: load i32 // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = reinterpret_cast<float&>(ir); // CHECK: load // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = reinterpret_cast<float&>(xr); - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = reinterpret_cast<X&>(ir); - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = reinterpret_cast<X&>(fr); _Complex float cf; _Complex float &cfr = cf; - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = reinterpret_cast<_Complex float&>(ir); - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = reinterpret_cast<_Complex float&>(fr); // CHECK: bitcast - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = reinterpret_cast<_Complex float&>(xr); // CHECK: ret void } // CHECK-LABEL: define void @_Z6c_castRiRfR1X void c_cast(int &ir, float &fr, X &xr) { - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load i32* + // CHECK: load i32, i32* ir = (int&)fr; // CHECK: load // CHECK: {{bitcast.*to i32\*}} - // CHECK: load i32* + // CHECK: load i32, i32* ir = (int&)xr; // CHECK: load i32 // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = (float&)ir; // CHECK: load // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = (float&)xr; - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = (X&)ir; - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = (X&)fr; _Complex float cf; _Complex float &cfr = cf; - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = (_Complex float&)ir; - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = (_Complex float&)fr; // CHECK: bitcast - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = (_Complex float&)xr; // CHECK: ret void } @@ -98,46 +98,46 @@ void functional_cast(int &ir, float &fr, X &xr) { typedef int &intref; typedef float &floatref; typedef X &Xref; - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load i32* + // CHECK: load i32, i32* ir = intref(fr); // CHECK: load // CHECK: {{bitcast.*to i32\*}} - // CHECK: load i32* + // CHECK: load i32, i32* ir = intref(xr); // CHECK: load i32 // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = floatref(ir); // CHECK: load // CHECK: {{bitcast.*to float\*}} - // CHECK: load float* + // CHECK: load float, float* fr = floatref(xr); - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = Xref(ir); - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* // CHECK: call void @llvm.memcpy.p0i8.p0i8.i64 xr = Xref(fr); typedef _Complex float &complex_float_ref; _Complex float cf; _Complex float &cfr = cf; - // CHECK: load i32** + // CHECK: load i32*, i32** // CHECK: bitcast i32* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = complex_float_ref(ir); - // CHECK: load float** + // CHECK: load float*, float** // CHECK: bitcast float* - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = complex_float_ref(fr); // CHECK: bitcast - // CHECK: load float* - // CHECK: load float* + // CHECK: load float, float* + // CHECK: load float, float* cfr = complex_float_ref(xr); // CHECK: ret void } |