unsigned long long test_bextr_u64(unsigned long __X, unsigned int __Y, unsigned int __Z) { // CHECK-LABEL: test_bextr_u64 // CHECK: and i32 %{{.*}}, 255 // CHECK: and i32 %{{.*}}, 255 // CHECK: shl i32 %{{.*}}, 8 // CHECK: or i32 %{{.*}}, %{{.*}} // CHECK: zext i32 %{{.*}} to i64 // CHECK: i64 @llvm.x86.bmi.bextr.64(i64 %{{.*}}, i64 %{{.*}}) return _bextr_u64(__X, __Y, __Z); }
unsigned long long test_bextr_u64(unsigned long __X, unsigned int __Y, unsigned int __Z) { // CHECK: @llvm.x86.bmi.bextr.64 return _bextr_u64(__X, __Y, __Z); }