summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
diff options
context:
space:
mode:
authorJF Bastien <jfb@google.com>2015-08-11 21:02:46 +0000
committerJF Bastien <jfb@google.com>2015-08-11 21:02:46 +0000
commitda06bce8b50d47ca841d694e10c12638157b2093 (patch)
tree916d3e9b6fbbc1c5fbe1d350e710dd9a3c42d9b7 /llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
parent8c3f9c9868512f2375a86d9eecb447e195c51335 (diff)
downloadbcm5719-llvm-da06bce8b50d47ca841d694e10c12638157b2093.tar.gz
bcm5719-llvm-da06bce8b50d47ca841d694e10c12638157b2093.zip
WebAssembly: implement comparison.
Some of the FP comparisons (ueq, one, ult, ule, ugt, uge) are currently broken, I'll fix them in a follow-up. Reviewers: sunfish Subscribers: llvm-commits, jfb Differential Revision: http://reviews.llvm.org/D11924 llvm-svn: 244665
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td15
1 files changed, 6 insertions, 9 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td b/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
index b6c09be83a3..16e5c8eb83d 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
@@ -28,15 +28,12 @@ defm COPYSIGN : BinaryFP<fcopysign>;
* defm NEARESTINT : UnaryFP<fnearbyint>;
*/
-/*
- * TODO(jfb): Add the following for 32-bit and 64-bit.
- *
- * float32.eq: compare equal
- * float32.lt: less than
- * float32.le: less than or equal
- * float32.gt: greater than
- * float32.ge: greater than or equal
- */
+defm EQ : ComparisonFP<SETOEQ>;
+defm NE : ComparisonFP<SETUNE>;
+defm LT : ComparisonFP<SETOLT>;
+defm LE : ComparisonFP<SETOLE>;
+defm GT : ComparisonFP<SETOGT>;
+defm GE : ComparisonFP<SETOGE>;
defm SQRT : UnaryFP<fsqrt>;
OpenPOWER on IntegriCloud