From ee770e9c4eb3d5582c2628d97335278d83b2fea9 Mon Sep 17 00:00:00 2001 From: Sanjay Patel Date: Thu, 8 Mar 2018 22:05:27 +0000 Subject: [PATCH] [Reassociate] fix test to be independent of FP undef llvm-svn: 327071 --- llvm/test/Transforms/Reassociate/crash2.ll | 31 ++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/llvm/test/Transforms/Reassociate/crash2.ll b/llvm/test/Transforms/Reassociate/crash2.ll index b51a88c..7e4a327 100644 --- a/llvm/test/Transforms/Reassociate/crash2.ll +++ b/llvm/test/Transforms/Reassociate/crash2.ll @@ -1,25 +1,28 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt -reassociate %s -S -o - | FileCheck %s ; Reassociate pass used to crash on these example +@g = global i32 0 define float @undef1() { -wrapper_entry: -; CHECK-LABEL: @undef1 -; CHECK: ret float fadd (float undef, float fadd (float undef, float fadd (float fsub (float -0.000000e+00, float undef), float fsub (float -0.000000e+00, float undef)))) - %0 = fadd fast float undef, undef - %1 = fsub fast float undef, %0 - %2 = fadd fast float undef, %1 - ret float %2 +; CHECK-LABEL: @undef1( +; CHECK-NEXT: ret float fadd (float bitcast (i32 ptrtoint (i32* @g to i32) to float), float fadd (float bitcast (i32 ptrtoint (i32* @g to i32) to float), float fadd (float fsub (float -0.000000e+00, float bitcast (i32 ptrtoint (i32* @g to i32) to float)), float fsub (float -0.000000e+00, float bitcast (i32 ptrtoint (i32* @g to i32) to float))))) +; + %t0 = fadd fast float bitcast (i32 ptrtoint (i32* @g to i32) to float), bitcast (i32 ptrtoint (i32* @g to i32) to float) + %t1 = fsub fast float bitcast (i32 ptrtoint (i32* @g to i32) to float), %t0 + %t2 = fadd fast float bitcast (i32 ptrtoint (i32* @g to i32) to float), %t1 + ret float %t2 } define void @undef2() { -wrapper_entry: -; CHECK-LABEL: @undef2 -; CHECK: unreachable - %0 = fadd fast float undef, undef - %1 = fadd fast float %0, 1.000000e+00 - %2 = fsub fast float %0, %1 - %3 = fmul fast float %2, 2.000000e+00 +; CHECK-LABEL: @undef2( +; CHECK-NEXT: unreachable +; + %t0 = fadd fast float bitcast (i32 ptrtoint (i32* @g to i32) to float), bitcast (i32 ptrtoint (i32* @g to i32) to float) + %t1 = fadd fast float %t0, 1.0 + %t2 = fsub fast float %t0, %t1 + %t3 = fmul fast float %t2, 2.0 unreachable } + -- 2.7.4