1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=thumbv6m-eabi -verify-machineinstrs %s -o - | FileCheck %s 2*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-m:e-p:32:32-i1:8:32-i8:8:32-i16:16:32-i64:64-v128:64:128-a:0:32-n32-S64" 3*9880d681SAndroid Build Coastguard Workertarget triple = "thumbv6m--linux-gnueabi" 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker; Function Attrs: nounwind optsize 6*9880d681SAndroid Build Coastguard Workerdefine void @foo(i32* nocapture readonly %A) #0 { 7*9880d681SAndroid Build Coastguard Workerentry: 8*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: foo: 9*9880d681SAndroid Build Coastguard Worker; CHECK: ldm r[[BASE:[0-9]]]!, 10*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: mov r[[BASE]], 11*9880d681SAndroid Build Coastguard Worker %0 = load i32, i32* %A, align 4 12*9880d681SAndroid Build Coastguard Worker %arrayidx1 = getelementptr inbounds i32, i32* %A, i32 1 13*9880d681SAndroid Build Coastguard Worker %1 = load i32, i32* %arrayidx1, align 4 14*9880d681SAndroid Build Coastguard Worker %call = tail call i32 @bar(i32 %0, i32 %1, i32 %0, i32 %1) #2 15*9880d681SAndroid Build Coastguard Worker %call2 = tail call i32 @bar(i32 %0, i32 %1, i32 %0, i32 %1) #2 16*9880d681SAndroid Build Coastguard Worker ret void 17*9880d681SAndroid Build Coastguard Worker} 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Worker; Function Attrs: optsize 20*9880d681SAndroid Build Coastguard Workerdeclare i32 @bar(i32, i32, i32, i32) #1 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerattributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } 23*9880d681SAndroid Build Coastguard Workerattributes #1 = { optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } 24*9880d681SAndroid Build Coastguard Workerattributes #2 = { nounwind optsize } 25