diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-04-01 18:14:46 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-04-01 18:14:46 -0700 |
commit | 609bf2ea07190fd87a875ce5fef7016ee2a0ee9b (patch) | |
tree | 2d2d7da9bfcad051fe2e1ed0d47eac8f9ed855bd /tests/runner.py | |
parent | a08fe05250cd2ebd89dd832321d7d2f6c1711b9a (diff) |
proper precise unsigned i64 modulo, and passing tests for i64 division and modulo
Diffstat (limited to 'tests/runner.py')
-rwxr-xr-x | tests/runner.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/tests/runner.py b/tests/runner.py index 15883749..c7867c88 100755 --- a/tests/runner.py +++ b/tests/runner.py @@ -834,9 +834,6 @@ m_divisor is 1091269979 if Settings.USE_TYPED_ARRAYS != 2: return self.skip('full i64 stuff only in ta2') Settings.PRECISE_I64_MATH = 1 - print 'TODO: i == 64 unsigned' - print 'TODO: make precise the default, and imprecise in -O3' - src = r''' #include <inttypes.h> #include <stdio.h> @@ -848,7 +845,7 @@ m_divisor is 1091269979 y += x; x /= 3; y *= 5; - printf("unsigned %d: %llu,%llu,%llu,%llu,%llu\n", i, x, y, x+y, x-y, x*y);//, y ? x/y : 0, x ? y/x : 0, y ? x%y : 0, x ? y%x : 0); + printf("unsigned %d: %llu,%llu,%llu,%llu,%llu,%llu,%llu,%llu,%llu\n", i, x, y, x+y, x-y, x*y, y ? x/y : 0, x ? y/x : 0, y ? x%y : 0, x ? y%x : 0); } int64_t x2 = 0, y2 = 0; for (int i = 0; i < 64; i++) { @@ -863,6 +860,10 @@ m_divisor is 1091269979 ''' self.do_run(src, open(path_from_root('tests', 'i64_precise.txt')).read()) + print 'TODO: i == 64 unsigned' + print 'TODO: make precise the default, and imprecise in -O3' + #1/0. + def test_unaligned(self): if Settings.QUANTUM_SIZE == 1: return self.skip('No meaning to unaligned addresses in q1') |