From fb5670fc16f04ffac28529c729a3df9ffea3bda6 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 4 Feb 2010 07:32:01 +0000 Subject: [PATCH] move the PR6214 microoptzn to this file. llvm-svn: 95299 --- llvm/lib/Target/X86/README-SSE.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/llvm/lib/Target/X86/README-SSE.txt b/llvm/lib/Target/X86/README-SSE.txt index 0f3e44b52899..a8f7f945b065 100644 --- a/llvm/lib/Target/X86/README-SSE.txt +++ b/llvm/lib/Target/X86/README-SSE.txt @@ -936,3 +936,21 @@ Also, the 'ret's should be shared. This is PR6032. //===---------------------------------------------------------------------===// +These should compile into the same code (PR6214): Perhaps instcombine should +canonicalize the former into the later? + +define float @foo(float %x) nounwind { + %t = bitcast float %x to i32 + %s = and i32 %t, 2147483647 + %d = bitcast i32 %s to float + ret float %d +} + +declare float @fabsf(float %n) +define float @bar(float %x) nounwind { + %d = call float @fabsf(float %x) + ret float %d +} + +//===---------------------------------------------------------------------===// +