aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Gohman <sunfish@mozilla.com>2015-05-11 10:05:31 -0700
committerDan Gohman <sunfish@mozilla.com>2015-05-11 10:05:31 -0700
commit29eddca11254da809f05fb3900b2b3f03d1cd072 (patch)
tree6b9f3169df026c9c3f69c4d59e50ff2324efd418
parentd543ff1a157910e37be1e0d31a9a965178abfc3a (diff)
parentdf965e349e80c0993f8e38244f1be959de05c916 (diff)
downloadnanowasm-design-29eddca11254da809f05fb3900b2b3f03d1cd072.tar.gz
Merge pull request #46 from WebAssembly/more-ops
Add more operations.
-rw-r--r--AstSemantics.md15
1 files changed, 11 insertions, 4 deletions
diff --git a/AstSemantics.md b/AstSemantics.md
index 96ab81c..d01f004 100644
--- a/AstSemantics.md
+++ b/AstSemantics.md
@@ -245,8 +245,12 @@ Additional 32-bit integer Operations under consideration:
* Int32SMulHigh - signed multiplication (upper 32-bits)
* Int32UMulHigh - unsigned multiplication (upper 32-bits)
- * Int32Clz - count leading zeroes
+ * Int32Clz - count leading zeroes (defined for all values, including 0)
+ * Int32Ctz - count trailing zeroes (defined for all values, including 0)
* Int32Popcnt - count number of ones
+ * Int32BSwap - reverse bytes (endian conversion)
+ * Int32Rotr - bitwise rotate right
+ * Int32Rotl - bitwise rotate left
* Int32Not - signed-less one's complement
* Int32SMin - signed minimum
* Int32SMax - signed maximum
@@ -268,15 +272,17 @@ All 64-bit floating point operations conform to the IEEE-754 standard.
* Float64Mul - multiplication
* Float64Div - division
* Float64Abs - absolute value
+ * Float64Neg - negation
+ * Float64Copysign - copysign
* Float64Ceil - ceiling operation
* Float64Floor - floor operation
* Float64Eq - compare equal
* Float64Lt - less than
* Float64Le - less than or equal
+ * Float64Sqrt - square root
Operations under consideration:
- * Float64Sqrt - square root
## 32-bit Floating point operations
@@ -287,16 +293,17 @@ All 32-bit floating point operations conform to the IEEE-754 standard.
* Float32Mul - multiplication
* Float32Div - division
* Float32Abs - absolute value
+ * Float32Neg - negation
+ * Float32Copysign - copysign
* Float32Ceil - ceiling operation
* Float32Floor - floor operation
* Float32Eq - compare equal
* Float32Lt - less than
* Float32Le - less than or equal
+ * Float32Sqrt - square root
Operations under consideration:
- * Float32Sqrt - square root
-
Note that the IEEE 754 standard does not require extended operations
like transcendental functions to have a specified precision.