diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2024-03-31 23:10:44 +0300 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2024-03-31 23:10:44 +0300 |
| commit | ab276c733ce9dc80983e5c8ae5c530e1477cf990 (patch) | |
| tree | ef5da32c91d27da7a53a26e8d501f0ea616558c8 /core | |
| parent | a152fbd956cc9cb9c05a233abe004ba3d12767a0 (diff) | |
| download | tri-ab276c733ce9dc80983e5c8ae5c530e1477cf990.tar.gz tri-ab276c733ce9dc80983e5c8ae5c530e1477cf990.zip | |
implement more meta instructions
+ Also have a working draft of ABI names for registers, matches qbt
currently but should probably codify somewhere
Diffstat (limited to 'core')
| -rw-r--r-- | core/tri.h | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -576,9 +576,9 @@ static inline int tri_sign(tri_t t) int lz = __builtin_clzll(t); if (lz % 2 == 0) - return 1; + return -1; - return -1; + return 1; } static inline bool tri_eq(tri_t a, tri_t b) @@ -590,10 +590,10 @@ static inline bool tri_lt(tri_t a, tri_t b) { tri_t r = tri_sub(a, b); int s = tri_sign(r); - if (s >= 0) - return false; + if (s < 0) + return true; - return true; + return false; } static inline bool tri_le(tri_t a, tri_t b) @@ -603,12 +603,12 @@ static inline bool tri_le(tri_t a, tri_t b) static inline bool tri_gt(tri_t a, tri_t b) { - return tri_le(b, a); + return tri_gt(b, a); } static inline bool tri_ge(tri_t a, tri_t b) { - return tri_lt(b, a); + return tri_le(b, a); } #define tri_illegal_op()\ |
