22; RUN: llc -verify-machineinstrs -mcpu=pwr9 -ppc-asm-full-reg-names -mtriple=powerpc-ibm-aix < %s | \
33; RUN: FileCheck %s --check-prefix=CHECK-AIX-32-P9
44
5+ ; RUN: llc -verify-machineinstrs -mcpu=pwr9 -ppc-asm-full-reg-names -mtriple=powerpc-unknown-linux-gnu < %s | \
6+ ; RUN: FileCheck %s --check-prefix=CHECK-LINUX32-P9
57
6- define i32 @memcmp_test (ptr nocapture noundef readonly %ptr1 , ptr nocapture noundef readonly %ptr2 , i32 noundef %num ) local_unnamed_addr {
8+ define i32 @memcmp_test (ptr nocapture noundef readonly %ptr1 , ptr nocapture noundef readonly %ptr2 , i32 noundef %num ) nounwind {
79; CHECK-AIX-32-P9-LABEL: memcmp_test:
810; CHECK-AIX-32-P9: # %bb.0: # %entry
911; CHECK-AIX-32-P9-NEXT: mflr r0
@@ -15,12 +17,23 @@ define i32 @memcmp_test(ptr nocapture noundef readonly %ptr1, ptr nocapture noun
1517; CHECK-AIX-32-P9-NEXT: lwz r0, 8(r1)
1618; CHECK-AIX-32-P9-NEXT: mtlr r0
1719; CHECK-AIX-32-P9-NEXT: blr
20+ ;
21+ ; CHECK-LINUX32-P9-LABEL: memcmp_test:
22+ ; CHECK-LINUX32-P9: # %bb.0: # %entry
23+ ; CHECK-LINUX32-P9-NEXT: mflr r0
24+ ; CHECK-LINUX32-P9-NEXT: stwu r1, -16(r1)
25+ ; CHECK-LINUX32-P9-NEXT: stw r0, 20(r1)
26+ ; CHECK-LINUX32-P9-NEXT: bl memcmp
27+ ; CHECK-LINUX32-P9-NEXT: lwz r0, 20(r1)
28+ ; CHECK-LINUX32-P9-NEXT: addi r1, r1, 16
29+ ; CHECK-LINUX32-P9-NEXT: mtlr r0
30+ ; CHECK-LINUX32-P9-NEXT: blr
1831entry:
1932 %call = tail call i32 @memcmp (ptr noundef %ptr1 , ptr noundef %ptr2 , i32 noundef %num )
2033 ret i32 %call
2134}
2235
23- declare i32 @memcmp (ptr noundef captures(none), ptr noundef captures(none), i32 noundef) local_unnamed_addr
36+ declare i32 @memcmp (ptr noundef captures(none), ptr noundef captures(none), i32 noundef) nounwind
2437
2538
2639
0 commit comments