# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 4
# RUN: llc -mtriple aarch64 -run-pass=aarch64-prelegalizer-combiner %s -o - \
# RUN: --aarch64prelegalizercombiner-disable-rule=constant_fold_binop | FileCheck %s
# REQUIRES: asserts
# `constant_fold_binop` is disabled to trigger the infinite loop in `commute_int_constant_to_rhs`.
---
name: add
tracksRegLiveness: true
body: |
bb.0:
liveins: $s0
; CHECK-LABEL: name: add
; CHECK: liveins: $s0
; CHECK-NEXT: {{ $}}
; CHECK-NEXT: %c0:_(s32) = G_CONSTANT i32 1
; CHECK-NEXT: %c1:_(s32) = G_CONSTANT i32 2
; CHECK-NEXT: %add:_(s32) = G_ADD %c0, %c1
; CHECK-NEXT: $s0 = COPY %add(s32)
; CHECK-NEXT: RET_ReallyLR
%c0:_(s32) = G_CONSTANT i32 1
%c1:_(s32) = G_CONSTANT i32 2
%add:_(s32) = G_ADD %c0, %c1
$s0 = COPY %add
RET_ReallyLR
...