History log of /llvm-project/llvm/test/Transforms/InstCombine/fpclass-check-idioms.ll (Results 1 – 5 of 5)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4
# 38fffa63 06-Nov-2024 Paul Walker <paul.walker@arm.com>

[LLVM][IR] Use splat syntax when printing Constant[Data]Vector. (#112548)


Revision tags: llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2
# dba3dfa2 02-Aug-2024 Yingwei Zheng <dtcxzyw2333@gmail.com>

[InstCombine] Fold isnan idioms (#101510)

Folds `(icmp ne ((bitcast X) & FractionBits), 0) & (icmp eq ((bitcast X)
& ExpBits), ExpBits) -> fcmp uno X, 0.0` and
`(icmp eq ((bitcast X) & FractionBit

[InstCombine] Fold isnan idioms (#101510)

Folds `(icmp ne ((bitcast X) & FractionBits), 0) & (icmp eq ((bitcast X)
& ExpBits), ExpBits) -> fcmp uno X, 0.0` and
`(icmp eq ((bitcast X) & FractionBits), 0) | (icmp ne ((bitcast X) &
ExpBits), ExpBits) -> fcmp ord X, 0.0`

Alive2: https://alive2.llvm.org/ce/z/mrLn_x

show more ...


Revision tags: llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3
# 44706bd4 13-Feb-2024 ostannard <oliver.stannard@arm.com>

[InstCombine] Don't add fcmp instructions to strictfp functions (#81498)

The strictfp attribute has the requirement that "LLVM will not introduce
any new floating-point instructions that may trap".

[InstCombine] Don't add fcmp instructions to strictfp functions (#81498)

The strictfp attribute has the requirement that "LLVM will not introduce
any new floating-point instructions that may trap". The llvm.is.fpclass
intrinsic is documented as "The function never raises floating-point
exceptions", and the fcmp instruction may raise one, so we can't
transform the former into the latter in functions with the strictfp
attribute.

show more ...


# c8ca98a2 08-Feb-2024 Yingwei Zheng <dtcxzyw2333@gmail.com>

[InstCombine] Handle IsInf/IsZero idioms (#80607)

This patch does the following folds:
```
icmp eq/ne (bitcast X to int), (bitcast +/-inf to int) -> llvm.is.fpclass(X, (~)fcPosInf/fcNegInf)
icmp

[InstCombine] Handle IsInf/IsZero idioms (#80607)

This patch does the following folds:
```
icmp eq/ne (bitcast X to int), (bitcast +/-inf to int) -> llvm.is.fpclass(X, (~)fcPosInf/fcNegInf)
icmp eq/ne (bitcast X to int), (bitcast +0/-0 to int) -> llvm.is.fpclass(X, (~)fcPosZero/fcNegZero)
```
Alive2: https://alive2.llvm.org/ce/z/JJmEE9

show more ...


Revision tags: llvmorg-18.1.0-rc2
# 390b9974 03-Feb-2024 Yingwei Zheng <dtcxzyw2333@gmail.com>

[InstCombine] Handle isNanOrInf idioms (#80414)

This patch folds:
```
(icmp eq (and (bitcast X to int), ExponentMask), ExponentMask) --> llvm.is.fpclass(X, fcInf|fcNan)
(icmp ne (and (bitcast X t

[InstCombine] Handle isNanOrInf idioms (#80414)

This patch folds:
```
(icmp eq (and (bitcast X to int), ExponentMask), ExponentMask) --> llvm.is.fpclass(X, fcInf|fcNan)
(icmp ne (and (bitcast X to int), ExponentMask), ExponentMask) --> llvm.is.fpclass(X, ~(fcInf|fcNan))
```
Alive2: https://alive2.llvm.org/ce/z/_hXAAF

show more ...