isel-postprocessing-test-fold-memop.ll 398 Bytes
; RUN: llc -O2 -mtriple=x86_64-- -stop-after=finalize-isel < %s | FileCheck %s

define i1 @fold_test(i64* %x, i64 %l) {
entry:
  %0 = load i64, i64* %x, align 8
  %and = and i64 %0, %l
  %tobool = icmp ne i64 %and, 0
  ret i1 %tobool

  ; Folding the load+and+icmp instructions into a TEST64mr instruction
  ; should preserve memory operands.
  ; CHECK: TEST64mr {{.*}} :: (load 8 from {{%.*}})
}