@@ -916,9 +916,10 @@ void test_builtin_ctzg(unsigned char uc, unsigned short us, unsigned int ui,
916916
917917#endif
918918
919+ #include <stdbool.h>
919920// CHECK-LABEL: define{{.*}} void @test_builtin_bswapg
920921void test_builtin_bswapg (unsigned char uc , unsigned short us , unsigned int ui ,
921- unsigned long ul , unsigned long long ull ,
922+ unsigned long ul , unsigned long long ull , bool b ,
922923#ifdef __SIZEOF_INT128__
923924 unsigned __int128 ui128 ,
924925#endif
@@ -929,9 +930,14 @@ void test_builtin_bswapg(unsigned char uc, unsigned short us, unsigned int ui,
929930 int x = 0 ;
930931 x = x * 2 ;
931932#endif
933+ b = __builtin_bswapg (b );
934+ // CHECK: %{{.*}} = load i8, ptr %b.addr
935+ // CHECK: %{{.*}} = trunc i8 %{{.*}} to i1
936+ // CHECK: %{{.*}} = zext i1 %{{.*}} to i8
937+ // CHECK: store i8 %{{.*}}, ptr %b.addr
932938 uc = __builtin_bswapg (uc );
933- // CHECK: %1 = load i8, ptr %uc.addr
934- // CHECK: store i8 %1 , ptr %uc.addr
939+ // CHECK: %{{.*}} = load i8, ptr %uc.addr
940+ // CHECK: store i8 %{{.*}} , ptr %uc.addr
935941 us = __builtin_bswapg (us );
936942 // CHECK: call i16 @llvm.bswap.i16
937943 ui = __builtin_bswapg (ui );
0 commit comments