-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; Simple st->ld forwarding derived from a lexical backward dep.
-; RUN: opt -S -loop-load-elim < %s | FileCheck %s
+; RUN: opt -S -passes=loop-load-elim < %s | FileCheck %s
; We can't hoist conditional loads to the preheader for the initial value.
; E.g. in the loop below we'd access array[-1] if we did:
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; Simple st->ld forwarding derived from a lexical forward dep, but
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; No loop-carried forwarding: The intervening store to A[i] kills the stored
; value from the previous iteration.
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; Simple st->ld forwarding derived from a lexical forward dep.
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
-; RUN: opt -loop-load-elim -S -runtime-check-per-loop-load-elim=2 < %s | FileCheck %s --check-prefix=AGGRESSIVE
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S -runtime-check-per-loop-load-elim=2 < %s | FileCheck %s --check-prefix=AGGRESSIVE
; This needs two pairs of memchecks (A * { C, D }) for a single load
; elimination which is considered to expansive by default.
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; In this case the later store forward to the load:
;
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; The accesses to A are independent here but LAA reports it as a loop-carried
; forward dependence. Check that we don't perform st->ld forwarding between
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; RUN: opt -aa-pipeline=basic-aa -passes='require<profile-summary>,function(loop-load-elim)' -S < %s | FileCheck %s -check-prefix=PGSO
-; RUN: opt -loop-load-elim -pgso=false -S < %s | FileCheck %s -check-prefix=NPGSO
+; RUN: opt -passes=loop-load-elim -pgso=false -S < %s | FileCheck %s -check-prefix=NPGSO
; When optimizing for size don't eliminate in this loop because the loop would
; have to be versioned first because A and C may alias.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -indvars -loop-load-elim < %s 2>&1 | FileCheck %s
+; RUN: opt -S -passes='loop(indvars),loop-load-elim' < %s 2>&1 | FileCheck %s
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128-ni:1-p2:32:8:8:32-ni:2"
target triple = "x86_64-unknown-linux-gnu"
-; RUN: opt -loop-load-elim -S %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S %s | FileCheck %s
; RUN: opt -passes=loop-load-elim -S %s | FileCheck %s
; REQUIRES: asserts
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -loop-load-elim -S < %s | \
+; RUN: opt -passes=loop-load-elim -S < %s | \
; RUN: FileCheck %s -check-prefix=DEFAULT
-; RUN: opt -loop-load-elim -S -enable-mem-access-versioning=0 < %s | \
+; RUN: opt -passes=loop-load-elim -S -enable-mem-access-versioning=0 < %s | \
; RUN: FileCheck %s -check-prefix=NO-VERSION
-; RUN: opt -loop-load-elim -S -loop-load-elimination-scev-check-threshold=1 < %s | \
+; RUN: opt -passes=loop-load-elim -S -loop-load-elimination-scev-check-threshold=1 < %s | \
; RUN: FileCheck %s -check-prefix=THRESHOLD
; Forwarding in the presence of symbolic strides:
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt --opaque-pointers -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt --opaque-pointers -passes=loop-load-elim -S < %s | FileCheck %s
; If the store and the load use different types, but have the same
; size then we should still be able to forward the value.
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; If the store and the load use different types, but have the same
; size then we should still be able to forward the value.
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
; RUN: opt -aa-pipeline=basic-aa -passes=loop-load-elim -S < %s | FileCheck %s
target datalayout = "e-m:o-i32:64-f80:128-n8:16:32:64-S128"
-; RUN: opt -loop-load-elim -S < %s | FileCheck %s
+; RUN: opt -passes=loop-load-elim -S < %s | FileCheck %s
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"