27 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 52; RUN: opt < %s -passes=instcombine -S | FileCheck %s3define float @src(float %arg1) {4; CHECK-LABEL: define float @src(5; CHECK-SAME: float [[ARG1:%.*]]) {6; CHECK-NEXT: [[V3:%.*]] = call float @llvm.fabs.f32(float [[ARG1]])7; CHECK-NEXT: ret float [[V3]]8;9 %v2 = fadd float %arg1, 0.000000e+0010 %v3 = call float @llvm.fabs.f32(float %v2)11 ret float %v312}13 14define float @src2(float %arg1) {15; CHECK-LABEL: define float @src2(16; CHECK-SAME: float [[ARG1:%.*]]) {17; CHECK-NEXT: [[V2:%.*]] = fadd float [[ARG1]], 0.000000e+0018; CHECK-NEXT: [[V3:%.*]] = call float @llvm.fabs.f32(float [[V2]])19; CHECK-NEXT: [[V4:%.*]] = fsub float [[V2]], [[V3]]20; CHECK-NEXT: ret float [[V4]]21;22 %v2 = fadd float %arg1, 0.000000e+0023 %v3 = call float @llvm.fabs.f32(float %v2)24 %v4 = fsub float %v2, %v325 ret float %v426}27