xref: /llvm-project/llvm/test/CodeGen/PowerPC/dscr-set.ll (revision 2e55bc9f3c233679535e237623539195e6492ec1)
1*2e55bc9fSStefan Pintilie; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu -mcpu=pwr9 \
2*2e55bc9fSStefan Pintilie; RUN: 	   | FileCheck %s -check-prefix=DEFAULT
3*2e55bc9fSStefan Pintilie; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu -mcpu=pwr9 \
4*2e55bc9fSStefan Pintilie; RUN: 	   -ppc-set-dscr=0xFFFFFFFFFFFFFFFF | FileCheck %s -check-prefix=UPPER
5*2e55bc9fSStefan Pintilie; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu -mcpu=pwr9 \
6*2e55bc9fSStefan Pintilie; RUN: 	   -ppc-set-dscr=0x01C4 | FileCheck %s -check-prefix=LOWER
7*2e55bc9fSStefan Pintilie
8*2e55bc9fSStefan Pintiliedefine i32 @main() {
9*2e55bc9fSStefan Pintilie
10*2e55bc9fSStefan Pintilie; CHECK:   	   # %bb.0:
11*2e55bc9fSStefan Pintilie
12*2e55bc9fSStefan Pintilie; DEFAULT-NOT:	   mtudscr
13*2e55bc9fSStefan Pintilie
14*2e55bc9fSStefan Pintilie; UPPER:	   lis [[inReg:[0-9]+]], 511
15*2e55bc9fSStefan Pintilie; UPPER-NEXT:	   ori [[inReg]], [[inReg]], 65535
16*2e55bc9fSStefan Pintilie; UPPER-NEXT:	   mtudscr [[inReg]]
17*2e55bc9fSStefan Pintilie
18*2e55bc9fSStefan Pintilie; LOWER:	   lis [[inReg:[0-9]+]], 0
19*2e55bc9fSStefan Pintilie; LOWER-NEXT:	   ori [[inReg]], [[inReg]], 452
20*2e55bc9fSStefan Pintilie; LOWER-NEXT:	   mtudscr [[inReg]]
21*2e55bc9fSStefan Pintilie
22*2e55bc9fSStefan Pintilie       ret i32 1
23*2e55bc9fSStefan Pintilie}
24