[llvm-commits] [llvm] r42423 - in /llvm/trunk: include/llvm/CodeGen/RuntimeLibcalls.h include/llvm/Intrinsics.td lib/Analysis/ConstantFolding.cpp lib/CodeGen/SelectionDAG/LegalizeDAG.cpp lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp lib/CodeGen/SelectionDAG/TargetLowering.cpp test/CodeGen/X86/2007-09-27-LDIntrinsics.ll utils/TableGen/CodeGenTarget.cpp utils/TableGen/IntrinsicEmitter.cpp

Chris Lattner clattner at apple.com
Fri Sep 28 10:00:16 PDT 2007


Hi Dale,

On Sep 27, 2007, at 6:08 PM, Dale Johannesen wrote:

> ====================================================================== 
> ========
> --- llvm/trunk/include/llvm/Intrinsics.td (original)
> +++ llvm/trunk/include/llvm/Intrinsics.td Thu Sep 27 20:08:20 2007
> @@ -76,6 +76,9 @@
>  def llvm_i64_ty        : LLVMType<i64>;
>  def llvm_float_ty      : LLVMType<f32>;
>  def llvm_double_ty     : LLVMType<f64>;
> +def llvm_f80_ty        : LLVMType<f80>;
> +def llvm_f128_ty       : LLVMType<f128>;
> +def llvm_ppcf128_ty    : LLVMType<ppcf128>;
>  def llvm_ptr_ty        :  
> LLVMPointerType<llvm_i8_ty>;             // i8*
>  def llvm_ptrptr_ty     :  
> LLVMPointerType<llvm_ptr_ty>;            // i8**
>  def llvm_empty_ty      :  
> LLVMType<OtherVT>;                       // { }
> @@ -177,9 +180,16 @@
>  let Properties = [IntrNoMem] in {
>    def int_sqrt_f32 : Intrinsic<[llvm_float_ty, llvm_float_ty]>;
>    def int_sqrt_f64 : Intrinsic<[llvm_double_ty, llvm_double_ty]>;
> +  def int_sqrt_f80 : Intrinsic<[llvm_f80_ty, llvm_f80_ty]>;
> +  def int_sqrt_f128 : Intrinsic<[llvm_f128_ty, llvm_f128_ty]>;
> +  def int_sqrt_ppcf128 : Intrinsic<[llvm_ppcf128_ty,  
> llvm_ppcf128_ty]>;
>
>    def int_powi_f32 : Intrinsic<[llvm_float_ty, llvm_float_ty,  
> llvm_i32_ty]>;
>    def int_powi_f64 : Intrinsic<[llvm_double_ty, llvm_double_ty,  
> llvm_i32_ty]>;
> +  def int_powi_f80 : Intrinsic<[llvm_f80_ty, llvm_f80_ty,  
> llvm_i32_ty]>;
> +  def int_powi_f128 : Intrinsic<[llvm_f128_ty, llvm_f128_ty,  
> llvm_i32_ty]>;
> +  def int_powi_ppcf128 : Intrinsic<[llvm_ppcf128_ty, llvm_ppcf128_ty,
> +                                    llvm_i32_ty]>;
>  }

Why not use anyfp?  This would allow us to have one sqrt and one powi  
definition.

-Chris



More information about the llvm-commits mailing list