1*9880d681SAndroid Build Coastguard Worker; Test moves between GPRs. 2*9880d681SAndroid Build Coastguard Worker; 3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker; Test 8-bit moves, which should get promoted to i32. 6*9880d681SAndroid Build Coastguard Workerdefine i8 @f1(i8 %a, i8 %b) { 7*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f1: 8*9880d681SAndroid Build Coastguard Worker; CHECK: lr %r2, %r3 9*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 10*9880d681SAndroid Build Coastguard Worker ret i8 %b 11*9880d681SAndroid Build Coastguard Worker} 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Worker; Test 16-bit moves, which again should get promoted to i32. 14*9880d681SAndroid Build Coastguard Workerdefine i16 @f2(i16 %a, i16 %b) { 15*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f2: 16*9880d681SAndroid Build Coastguard Worker; CHECK: lr %r2, %r3 17*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 18*9880d681SAndroid Build Coastguard Worker ret i16 %b 19*9880d681SAndroid Build Coastguard Worker} 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Worker; Test 32-bit moves. 22*9880d681SAndroid Build Coastguard Workerdefine i32 @f3(i32 %a, i32 %b) { 23*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f3: 24*9880d681SAndroid Build Coastguard Worker; CHECK: lr %r2, %r3 25*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 26*9880d681SAndroid Build Coastguard Worker ret i32 %b 27*9880d681SAndroid Build Coastguard Worker} 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Worker; Test 64-bit moves. 30*9880d681SAndroid Build Coastguard Workerdefine i64 @f4(i64 %a, i64 %b) { 31*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f4: 32*9880d681SAndroid Build Coastguard Worker; CHECK: lgr %r2, %r3 33*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 34*9880d681SAndroid Build Coastguard Worker ret i64 %b 35*9880d681SAndroid Build Coastguard Worker} 36