[clang] 81979c3 - [clang][RISCV][test] Add further test coverage for _Float16 on RISC-V

Alex Bradbury via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 1 05:34:43 PST 2023


Author: Alex Bradbury
Date: 2023-03-01T13:32:49Z
New Revision: 81979c3038defe8653b62ba05517ee6d6b3eb976

URL: https://github.com/llvm/llvm-project/commit/81979c3038defe8653b62ba05517ee6d6b3eb976
DIFF: https://github.com/llvm/llvm-project/commit/81979c3038defe8653b62ba05517ee6d6b3eb976.diff

LOG: [clang][RISCV][test] Add further test coverage for _Float16 on RISC-V

Check for size and alignment as we do for other types.

Added: 
    

Modified: 
    clang/test/Driver/riscv32-toolchain.c
    clang/test/Driver/riscv64-toolchain.c

Removed: 
    


################################################################################
diff  --git a/clang/test/Driver/riscv32-toolchain.c b/clang/test/Driver/riscv32-toolchain.c
index 15f6d232d613..bc46e5ffde5d 100644
--- a/clang/test/Driver/riscv32-toolchain.c
+++ b/clang/test/Driver/riscv32-toolchain.c
@@ -248,6 +248,9 @@ int align_ll = __alignof(long long);
 // CHECK: @align_p = dso_local global i32 4
 int align_p = __alignof(void*);
 
+// CHECK: @align_f16 = dso_local global i32 2
+int align_f16 = __alignof(_Float16);
+
 // CHECK: @align_f = dso_local global i32 4
 int align_f = __alignof(float);
 
@@ -284,6 +287,9 @@ int align_a_ll = __alignof(_Atomic(long long));
 // CHECK: @align_a_p = dso_local global i32 4
 int align_a_p = __alignof(_Atomic(void*));
 
+// CHECK: @align_a_f16 = dso_local global i32 2
+int align_a_f16 = __alignof(_Atomic(_Float16));
+
 // CHECK: @align_a_f = dso_local global i32 4
 int align_a_f = __alignof(_Atomic(float));
 
@@ -332,6 +338,9 @@ int size_a_ll = sizeof(_Atomic(long long));
 // CHECK: @size_a_p = dso_local global i32 4
 int size_a_p = sizeof(_Atomic(void*));
 
+// CHECK: @size_a_f16 = dso_local global i32 2
+int size_a_f16 = sizeof(_Atomic(_Float16));
+
 // CHECK: @size_a_f = dso_local global i32 4
 int size_a_f = sizeof(_Atomic(float));
 
@@ -380,6 +389,9 @@ unsigned long long check_ulonglong(void) { return 0; }
 // CHECK: define dso_local i32 @check_size_t()
 size_t check_size_t(void) { return 0; }
 
+// CHECK: define dso_local half @check_float16()
+_Float16 check_float16(void) { return 0; }
+
 // CHECK: define dso_local float @check_float()
 float check_float(void) { return 0; }
 

diff  --git a/clang/test/Driver/riscv64-toolchain.c b/clang/test/Driver/riscv64-toolchain.c
index 28e8142bb76f..613d3343b12d 100644
--- a/clang/test/Driver/riscv64-toolchain.c
+++ b/clang/test/Driver/riscv64-toolchain.c
@@ -204,6 +204,9 @@ int align_ll = __alignof(long long);
 // CHECK: @align_p = dso_local global i32 8
 int align_p = __alignof(void*);
 
+// CHECK: @align_f16 = dso_local global i32 2
+int align_f16 = __alignof(_Float16);
+
 // CHECK: @align_f = dso_local global i32 4
 int align_f = __alignof(float);
 
@@ -240,6 +243,9 @@ int align_a_ll = __alignof(_Atomic(long long));
 // CHECK: @align_a_p = dso_local global i32 8
 int align_a_p = __alignof(_Atomic(void*));
 
+// CHECK: @align_a_f16 = dso_local global i32 2
+int align_a_f16 = __alignof(_Atomic(_Float16));
+
 // CHECK: @align_a_f = dso_local global i32 4
 int align_a_f = __alignof(_Atomic(float));
 
@@ -288,6 +294,9 @@ int size_a_ll = sizeof(_Atomic(long long));
 // CHECK: @size_a_p = dso_local global i32 8
 int size_a_p = sizeof(_Atomic(void*));
 
+// CHECK: @size_a_f16 = dso_local global i32 2
+int size_a_f16 = sizeof(_Atomic(_Float16));
+
 // CHECK: @size_a_f = dso_local global i32 4
 int size_a_f = sizeof(_Atomic(float));
 
@@ -336,6 +345,9 @@ unsigned long long check_ulonglong(void) { return 0; }
 // CHECK: define dso_local i64 @check_size_t()
 size_t check_size_t(void) { return 0; }
 
+// CHECK: define dso_local half @check_float16()
+_Float16 check_float16(void) { return 0; }
+
 // CHECK: define dso_local float @check_float()
 float check_float(void) { return 0; }
 


        


More information about the cfe-commits mailing list