summaryrefslogtreecommitdiff
path: root/vere/ext/nasm/macros/fp.mac
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-10-05 21:56:51 +0700
committerpolwex <polwex@sortug.com>2025-10-05 21:56:51 +0700
commitfcedfddf00b3f994e4f4e40332ac7fc192c63244 (patch)
tree51d38e62c7bdfcc5f9a5e9435fe820c93cfc9a3d /vere/ext/nasm/macros/fp.mac
claude is gud
Diffstat (limited to 'vere/ext/nasm/macros/fp.mac')
-rw-r--r--vere/ext/nasm/macros/fp.mac62
1 files changed, 62 insertions, 0 deletions
diff --git a/vere/ext/nasm/macros/fp.mac b/vere/ext/nasm/macros/fp.mac
new file mode 100644
index 0000000..3a094a5
--- /dev/null
+++ b/vere/ext/nasm/macros/fp.mac
@@ -0,0 +1,62 @@
+;; --------------------------------------------------------------------------
+;;
+;; Copyright 2010-2020 The NASM Authors - All Rights Reserved
+;; See the file AUTHORS included with the NASM distribution for
+;; the specific copyright holders.
+;;
+;; Redistribution and use in source and binary forms, with or without
+;; modification, are permitted provided that the following
+;; conditions are met:
+;;
+;; * Redistributions of source code must retain the above copyright
+;; notice, this list of conditions and the following disclaimer.
+;; * Redistributions in binary form must reproduce the above
+;; copyright notice, this list of conditions and the following
+;; disclaimer in the documentation and/or other materials provided
+;; with the distribution.
+;;
+;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+;; CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+;; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+;; MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+;; DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+;; CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+;; SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+;; NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+;; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+;; HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+;; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+;; OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+;; EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+;;
+;; --------------------------------------------------------------------------
+
+;;
+;; fp.mac
+;;
+;; Floating-point utility macros
+;;
+
+USE: fp
+
+%define Inf __?Infinity?__
+%define NaN __?QNaN?__
+%define QNaN __?QNaN?__
+%define SNaN __?SNaN?__
+
+%define float8(x) __?float8?__(x)
+%define float16(x) __?float16?__(x)
+%define bfloat16(x) __?bfloat16?__(x)
+%define float32(x) __?float32?__(x)
+%define float64(x) __?float64?__(x)
+%define float80m(x) __?float80m?__(x)
+%define float80e(x) __?float80e?__(x)
+%define float128l(x) __?float128l?__(x)
+%define float128h(x) __?float128h?__(x)
+
+%imacro bf16 1-*.nolist
+ %rep %0
+ dw __?bfloat16?__(%1)
+ %rotate 1
+ %endrep
+%endmacro