From b6627cddaaa0f5b18070f50c3e5d5f85a9a8057c Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Sat, 27 Jun 1998 05:23:55 +0000 Subject: [PATCH] ChangeLog, et_c.awk, et_h.awk: et_h.awk, et_c.awk: Work around libm bug on the ARM. --- lib/et/ChangeLog | 4 ++++ lib/et/et_c.awk | 8 ++++++++ lib/et/et_h.awk | 8 ++++++++ 3 files changed, 20 insertions(+) diff --git a/lib/et/ChangeLog b/lib/et/ChangeLog index 49ae51f..fe6513c 100644 --- a/lib/et/ChangeLog +++ b/lib/et/ChangeLog @@ -1,3 +1,7 @@ +1998-06-27 Theodore Ts'o + + * et_h.awk, et_c.awk: Work around libm bug on the ARM. + 1998-03-30 Theodore Ts'o * Makefile.in: Fix bug where my_dir was set incorrectly. Install diff --git a/lib/et/et_c.awk b/lib/et/et_c.awk index b1af92a..5f95b55 100644 --- a/lib/et/et_c.awk +++ b/lib/et/et_c.awk @@ -77,6 +77,10 @@ c2n["_"]=63 # We start playing *_high, *low games here because the some # awk programs do not have the necessary precision (sigh) tab_base_low = table_number % mod_base + if (tab_base_low < 0) { + # Work around stupid bug in the ARM libm + tab_base_low = tab_base_low + mod_base + } tab_base_high = int(table_number / mod_base) tab_base_sign = 1; @@ -85,6 +89,10 @@ c2n["_"]=63 tab_base_high = (tab_base_high * 256) + \ int(tab_base_low / mod_base) tab_base_low = tab_base_low % mod_base + if (tab_base_low < 0) { + # Work around stupid bug in the ARM libm + tab_base_low = tab_base_low + mod_base + } if (table_number > 128*256*256) { # figure out: table_number_base -= 256*256*256*256 diff --git a/lib/et/et_h.awk b/lib/et/et_h.awk index c81a709..8b83a21 100644 --- a/lib/et/et_h.awk +++ b/lib/et/et_h.awk @@ -76,6 +76,10 @@ c2n["_"]=63 # We start playing *_high, *low games here because the some # awk programs do not have the necessary precision (sigh) tab_base_low = table_number % mod_base + if (tab_base_low < 0) { + # Work around stupid bug in the ARM libm + tab_base_low = tab_base_low + mod_base + } tab_base_high = int(table_number / mod_base) tab_base_sign = 1; @@ -84,6 +88,10 @@ c2n["_"]=63 tab_base_high = (tab_base_high * 256) + \ int(tab_base_low / mod_base) tab_base_low = tab_base_low % mod_base + if (tab_base_low < 0) { + # Work around stupid bug in the ARM libm + tab_base_low = tab_base_low + mod_base + } if (table_number > 128*256*256) { # figure out: table_number_base -= 256*256*256*256 -- 1.8.3.1