[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 10/30: Fix unboxed immediate range comparison type infer
From: |
Andy Wingo |
Subject: |
[Guile-commits] 10/30: Fix unboxed immediate range comparison type inference |
Date: |
Fri, 24 Nov 2017 09:24:21 -0500 (EST) |
wingo pushed a commit to branch master
in repository guile.
commit aa22f1f677194a96ea8708387417477eeeb4ec31
Author: Andy Wingo <address@hidden>
Date: Thu Nov 23 18:13:37 2017 +0100
Fix unboxed immediate range comparison type inference
* module/language/cps/types.scm (imm-u64-<, imm-s64-<): Fix minimum
computations.
---
module/language/cps/types.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/module/language/cps/types.scm b/module/language/cps/types.scm
index e83683e..21181b9 100644
--- a/module/language/cps/types.scm
+++ b/module/language/cps/types.scm
@@ -1043,7 +1043,7 @@ minimum, and maximum."
(restrict! a &u64 (max (&min a) b) (&max a))))
(define-predicate-inferrer/param (imm-u64-< b a true?)
(if true?
- (restrict! a &u64 (max (1+ (&min a)) b) (&max a))
+ (restrict! a &u64 (max (&min a) (1+ b)) (&max a))
(restrict! a &u64 (&min a) (min (&max a) b))))
(define-predicate-inferrer/param (s64-imm-= b a true?)
@@ -1055,7 +1055,7 @@ minimum, and maximum."
(restrict! a &s64 (max (&min a) b) (&max a))))
(define-predicate-inferrer/param (imm-s64-< b a true?)
(if true?
- (restrict! a &s64 (max (1+ (&min a)) b) (&max a))
+ (restrict! a &s64 (max (&min a) (1+ b)) (&max a))
(restrict! a &s64 (&min a) (min (&max a) b))))
- [Guile-commits] 30/30: Optimize check-urange in assembler.scm, (continued)
- [Guile-commits] 30/30: Optimize check-urange in assembler.scm, Andy Wingo, 2017/11/24
- [Guile-commits] 27/30: Add integer devirtualization pass., Andy Wingo, 2017/11/24
- [Guile-commits] 12/30: Remove effects-analysis exports that were undefined, Andy Wingo, 2017/11/24
- [Guile-commits] 11/30: Specialize fixnum and s64 phis, Andy Wingo, 2017/11/24
- [Guile-commits] 19/30: Add exact-integer? as interesting Tree-IL effect-free primitive, Andy Wingo, 2017/11/24
- [Guile-commits] 24/30: Declare bignum? as effect-free, Andy Wingo, 2017/11/24
- [Guile-commits] 13/30: Minor compile-cps refactor, Andy Wingo, 2017/11/24
- [Guile-commits] 15/30: DCE eliminates effect-free branches to the same continuation, Andy Wingo, 2017/11/24
- [Guile-commits] 29/30: DCE of branches punches through dead terms, Andy Wingo, 2017/11/24
- [Guile-commits] 21/30: Improve type and range inference on bignums, Andy Wingo, 2017/11/24
- [Guile-commits] 10/30: Fix unboxed immediate range comparison type inference,
Andy Wingo <=
- [Guile-commits] 04/30: Specialize-numbers reifies instructions that type-check, Andy Wingo, 2017/11/24
- [Guile-commits] 26/30: Better unboxing for logand over s64 values, Andy Wingo, 2017/11/24
- [Guile-commits] 16/30: intmap-remove returns empty-intmap if appropriate, Andy Wingo, 2017/11/24
- [Guile-commits] 25/30: Better type folding for = on exact numbers, Andy Wingo, 2017/11/24
- [Guile-commits] 28/30: Refactor to finish the primcalls-take-parameters work, Andy Wingo, 2017/11/24
- [Guile-commits] 23/30: Minor refactoring to type inference on < and =, Andy Wingo, 2017/11/24