diff --git a/llvm/test/Transforms/PhaseOrdering/fast-basictest.ll b/llvm/test/Transforms/PhaseOrdering/fast-basictest.ll index a5780ddc11605..c1480f4a3cc09 100644 --- a/llvm/test/Transforms/PhaseOrdering/fast-basictest.ll +++ b/llvm/test/Transforms/PhaseOrdering/fast-basictest.ll @@ -1,5 +1,9 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py -; +; RUN: opt < %s -reassociate -instcombine -S | FileCheck %s --check-prefixes=CHECK,REASSOC_AND_IC --allow-unused-prefixes +; RUN: opt < %s -O2 -S | FileCheck %s --check-prefixes=CHECK,O2 --allow-unused-prefixes + +target triple = "x86_64--" + ; Test cases in this file are intended to be run with both reassociate and ; instcombine passes enabled. ; @@ -8,9 +12,6 @@ ; - PhaseOrdering/fast-basictest.ll ; - PhaseOrdering/fast-reassociate-gvn.ll ; - Reassociate/fast-basictest.ll -; -; RUN: opt < %s -reassociate -instcombine -S | FileCheck %s --check-prefixes=CHECK,REASSOC_AND_IC --allow-unused-prefixes -; RUN: opt < %s -O2 -S | FileCheck %s --check-prefixes=CHECK,O2 --allow-unused-prefixes ; test2 ... test18 - both reassociate and instcombine passes ; are required to perform a transform @@ -280,10 +281,15 @@ define float @test19(float %a, float %b, float %c) nounwind { } define float @test19_reassoc_nsz(float %a, float %b, float %c) nounwind { -; CHECK-LABEL: @test19_reassoc_nsz( -; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[C:%.*]], [[B:%.*]] -; CHECK-NEXT: [[T7:%.*]] = fneg reassoc nsz float [[TMP1]] -; CHECK-NEXT: ret float [[T7]] +; REASSOC_AND_IC-LABEL: @test19_reassoc_nsz( +; REASSOC_AND_IC-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[B:%.*]], [[C:%.*]] +; REASSOC_AND_IC-NEXT: [[T7:%.*]] = fneg reassoc nsz float [[TMP1]] +; REASSOC_AND_IC-NEXT: ret float [[T7]] +; +; O2-LABEL: @test19_reassoc_nsz( +; O2-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[C:%.*]], [[B:%.*]] +; O2-NEXT: [[T7:%.*]] = fneg reassoc nsz float [[TMP1]] +; O2-NEXT: ret float [[T7]] ; %t3 = fsub reassoc nsz float %a, %b %t5 = fsub reassoc nsz float %t3, %c