aboutsummaryrefslogtreecommitdiff
path: root/taipan.c
diff options
context:
space:
mode:
Diffstat (limited to 'taipan.c')
-rw-r--r--taipan.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/taipan.c b/taipan.c
index d1cb8ed..d7aa888 100644
--- a/taipan.c
+++ b/taipan.c
@@ -616,10 +616,19 @@ void cprintfancy_big(bignump b) {
big_copy(tmp, b);
+ /* This is gross, but it saves 13 bytes here, plus another
+ 14 because we can remove big_negate from bigfloat.s. */
+#if BIGNUM == BIGFLOAT
+ if(tmp[0] & 0x80) {
+ cputc('-');
+ tmp[0] ^= 0x80;
+ }
+#else
if(big_cmp(tmp, big0) < 0) {
cputc('-');
big_negate(tmp);
}
+#endif
if(big_cmp(tmp, big1T) >= 0) {
// inverse "1 Trillion+!":