diff options
| author | Anton Korobeynikov <asl@math.spbu.ru> | 2007-11-15 23:25:33 +0000 |
|---|---|---|
| committer | Anton Korobeynikov <asl@math.spbu.ru> | 2007-11-15 23:25:33 +0000 |
| commit | 917c2a6ff2cfcd1263a5dd80c54336754c553ace (patch) | |
| tree | 0bdf888ec6dc60c6593bcce3ba60a8d446bcc9ed /include | |
| parent | 5db1afb462b048bc10e0003db5a770ed960b2ddf (diff) | |
Implement necessary bits for flt_rounds gcc builtin.
Codegen bits and llvm-gcc support will follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44182 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
| -rw-r--r-- | include/llvm/CodeGen/SelectionDAGNodes.h | 8 | ||||
| -rw-r--r-- | include/llvm/Intrinsics.td | 5 |
2 files changed, 13 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h index 56f85f4b74..5407de5b49 100644 --- a/include/llvm/CodeGen/SelectionDAGNodes.h +++ b/include/llvm/CodeGen/SelectionDAGNodes.h @@ -390,6 +390,14 @@ namespace ISD { // precision down to the specified precision (currently always 64->32). FP_ROUND, + // FLT_ROUNDS - Returns current rounding mode: + // -1 Undefined + // 0 Round to 0 + // 1 Round to nearest + // 2 Round to +inf + // 3 Round to -inf + FLT_ROUNDS, + // FP_ROUND_INREG - This operator takes a floating point register, and // rounds it to a floating point value. It then promotes it and returns it // in a register of the same size. This operation effectively just discards diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td index 4ede06d408..08d82588aa 100644 --- a/include/llvm/Intrinsics.td +++ b/include/llvm/Intrinsics.td @@ -262,6 +262,11 @@ def int_init_trampoline : Intrinsic<[llvm_ptr_ty, llvm_ptr_ty, llvm_ptr_ty, llvm_ptr_ty], []>, GCCBuiltin<"__builtin_init_trampoline">; +//===-------------------------- Other Intrinsics --------------------------===// +// +def int_flt_rounds : Intrinsic<[llvm_i32_ty]>, + GCCBuiltin<"__builtin_flt_rounds">; + //===----------------------------------------------------------------------===// // Target-specific intrinsics //===----------------------------------------------------------------------===// |
