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