| // REQUIRES: powerpc-registered-target | 
 | // RUN: %clang_cc1 -triple powerpc64-unknown-unknown -target-cpu pwr7 \ | 
 | // RUN: -emit-llvm %s -o - | FileCheck %s | 
 |  | 
 | // RUN: %clang_cc1 -triple powerpc64le-unknown-unknown -target-cpu pwr8 \ | 
 | // RUN: -emit-llvm %s -o - | FileCheck %s | 
 |  | 
 | // CHECK-LABEL: define signext i32 @test_divwe | 
 | int test_divwe(void) | 
 | { | 
 |   int a = 74; | 
 |   int b = 32; | 
 |   return __builtin_divwe(a, b); | 
 | // CHECK: @llvm.ppc.divwe | 
 | } | 
 |  | 
 | // CHECK-LABEL: define zeroext i32 @test_divweu | 
 | unsigned int test_divweu(void) | 
 | { | 
 |   unsigned int a = 74; | 
 |   unsigned int b = 32; | 
 |   return __builtin_divweu(a, b); | 
 | // CHECK: @llvm.ppc.divweu | 
 | } | 
 |  | 
 | // CHECK-LABEL: define i64 @test_divde | 
 | long long test_divde(void) | 
 | { | 
 |   long long a = 74LL; | 
 |   long long b = 32LL; | 
 |   return __builtin_divde(a, b); | 
 | // CHECK: @llvm.ppc.divde | 
 | } | 
 |  | 
 | // CHECK-LABEL: define i64 @test_divdeu | 
 | unsigned long long test_divdeu(void) | 
 | { | 
 |   unsigned long long a = 74ULL; | 
 |   unsigned long long b = 32ULL; | 
 |   return __builtin_divdeu(a, b); | 
 | // CHECK: @llvm.ppc.divdeu | 
 | } | 
 |  | 
 | // CHECK-LABEL: define i64 @test_bpermd | 
 | long long test_bpermd(void) | 
 | { | 
 |   long long a = 74LL; | 
 |   long long b = 32LL; | 
 |   return __builtin_bpermd(a, b); | 
 | // CHECK: @llvm.ppc.bpermd | 
 | } | 
 |  |