zhijian lin 1a540c3b8b
[PowerPC] Deprecate uses of ISD::ADDC/ISD::ADDE/ISD::SUBC/ISD::SUBE (#133155)
ISD::ADDC, ISD::ADDE, ISD::SUBC and ISD::SUBE are being deprecated,
using ISD::UADDO_CARRY,ISD::USUBO_CARRY instead. Lowering the UADDO,
UADDO_CARRY, USUBO, USUBO_CARRY in the patch.
2025-04-03 13:22:49 -04:00

29 lines
882 B
LLVM

; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc --verify-machineinstrs -mtriple powerpc-unknown-freebsd \
; RUN: -mcpu=pwr4 < %s | FileCheck %s
define double @postinctodbl(ptr nocapture %llp) #0 {
; CHECK-LABEL: postinctodbl:
; CHECK: # %bb.0: # %entry
; CHECK-NEXT: stwu 1, -16(1)
; CHECK-NEXT: .cfi_def_cfa_offset 16
; CHECK-NEXT: lwz 4, 4(3)
; CHECK-NEXT: stw 4, 12(1)
; CHECK-NEXT: addic 4, 4, 1
; CHECK-NEXT: lwz 5, 0(3)
; CHECK-NEXT: stw 5, 8(1)
; CHECK-NEXT: lfd 0, 8(1)
; CHECK-NEXT: stw 4, 4(3)
; CHECK-NEXT: addze 4, 5
; CHECK-NEXT: fcfid 1, 0
; CHECK-NEXT: stw 4, 0(3)
; CHECK-NEXT: addi 1, 1, 16
; CHECK-NEXT: blr
entry:
%0 = load i64, ptr %llp, align 8
%inc = add nsw i64 %0, 1
store i64 %inc, ptr %llp, align 8
%conv = sitofp i64 %0 to double
ret double %conv
}