brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 062d97c Raw
54 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc -verify-machineinstrs -ppc-asm-full-reg-names -mtriple=powerpc \3; RUN:   -mcpu=pwr7 < %s | FileCheck %s4; RUN: llc -verify-machineinstrs -ppc-asm-full-reg-names -mtriple=powerpc \5; RUN:   -mcpu=pwr8 < %s | FileCheck %s --check-prefix=PWR86 7define void @foo(ptr %a, i32 %x) {8; CHECK-LABEL: foo:9; CHECK:       # %bb.0:10; CHECK-NEXT:    rlwinm r5, r3, 3, 27, 2811; CHECK-NEXT:    extsb r4, r412; CHECK-NEXT:    li r6, 25513; CHECK-NEXT:    sync14; CHECK-NEXT:    rlwinm r3, r3, 0, 0, 2915; CHECK-NEXT:    xori r5, r5, 2416; CHECK-NEXT:    slw r7, r4, r517; CHECK-NEXT:    slw r6, r6, r518; CHECK-NEXT:    and r7, r7, r619; CHECK-NEXT:  .LBB0_1:20; CHECK-NEXT:    lwarx r8, 0, r321; CHECK-NEXT:    and r9, r8, r622; CHECK-NEXT:    srw r9, r9, r523; CHECK-NEXT:    extsb r9, r924; CHECK-NEXT:    cmpw r9, r425; CHECK-NEXT:    bgt cr0, .LBB0_326; CHECK-NEXT:  # %bb.2:27; CHECK-NEXT:    andc r8, r8, r628; CHECK-NEXT:    or r8, r7, r829; CHECK-NEXT:    stwcx. r8, 0, r330; CHECK-NEXT:    bne- cr0, .LBB0_131; CHECK-NEXT:  .LBB0_3:32; CHECK-NEXT:    lwsync33; CHECK-NEXT:    blr34;35; PWR8-LABEL: foo:36; PWR8:       # %bb.0:37; PWR8-NEXT:    sync38; PWR8-NEXT:    extsb r4, r439; PWR8-NEXT:  .LBB0_1:40; PWR8-NEXT:    lbarx r5, 0, r341; PWR8-NEXT:    extsb r5, r542; PWR8-NEXT:    cmpw r5, r443; PWR8-NEXT:    bgt cr0, .LBB0_344; PWR8-NEXT:  # %bb.2:45; PWR8-NEXT:    stbcx. r4, 0, r346; PWR8-NEXT:    bne- cr0, .LBB0_147; PWR8-NEXT:  .LBB0_3:48; PWR8-NEXT:    lwsync49; PWR8-NEXT:    blr50  %val = trunc i32 %x to i851  %1 = atomicrmw max ptr %a, i8 %val seq_cst52  ret void53}54