[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 04/16: Reify-primitives removes "/unlikely" ephemeral in
From: |
Andy Wingo |
Subject: |
[Guile-commits] 04/16: Reify-primitives removes "/unlikely" ephemeral instructions |
Date: |
Wed, 27 Dec 2017 10:02:47 -0500 (EST) |
wingo pushed a commit to branch master
in repository guile.
commit 1f460cb054286df15ec6b00157c555a3ba7c8843
Author: Andy Wingo <address@hidden>
Date: Sun Dec 17 13:45:27 2017 +0100
Reify-primitives removes "/unlikely" ephemeral instructions
* module/language/cps/reify-primitives.scm (reify-primitives): Remove
tag-fixnum/unlikely, etc.
---
module/language/cps/reify-primitives.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/module/language/cps/reify-primitives.scm
b/module/language/cps/reify-primitives.scm
index 1610356..df38cd5 100644
--- a/module/language/cps/reify-primitives.scm
+++ b/module/language/cps/reify-primitives.scm
@@ -188,6 +188,25 @@
(with-cps cps
(setk label ($kargs names vars ($continue k src ($call proc ()))))))
(($ $kargs names vars
+ ($ $continue k src ($ $primcall 'u64->scm/unlikely #f (u64))))
+ (with-cps cps
+ (setk label ($kargs names vars
+ ($continue k src ($primcall 'u64->scm #f (u64)))))))
+ (($ $kargs names vars
+ ($ $continue k src ($ $primcall 's64->scm/unlikely #f (s64))))
+ (with-cps cps
+ (setk label ($kargs names vars
+ ($continue k src ($primcall 's64->scm #f (s64)))))))
+ (($ $kargs names vars
+ ($ $continue k src ($ $primcall 'tag-fixnum/unlikely #f (s64))))
+ (with-cps cps
+ (setk label ($kargs names vars
+ ($continue k src ($primcall 'tag-fixnum #f (s64)))))))
+ (($ $kargs names vars
+ ($ $continue k src ($ $primcall 'load-const/unlikely val ())))
+ (with-cps cps
+ (setk label ($kargs names vars ($continue k src ($const val))))))
+ (($ $kargs names vars
($ $continue k src ($ $primcall 'mul/immediate b (a))))
(with-cps cps
(letv b*)
- [Guile-commits] branch master updated (da7144d -> 108ade6), Andy Wingo, 2017/12/27
- [Guile-commits] 01/16: Fix stack effect/clobber parsing for calls, Andy Wingo, 2017/12/27
- [Guile-commits] 04/16: Reify-primitives removes "/unlikely" ephemeral instructions,
Andy Wingo <=
- [Guile-commits] 07/16: Refactor list->seq to make return arity apparent, Andy Wingo, 2017/12/27
- [Guile-commits] 05/16: Remove compile-bytecode cases for ephemeral primitives, Andy Wingo, 2017/12/27
- [Guile-commits] 12/16: CPS conversion avoids residualizing unknown primcalls, Andy Wingo, 2017/12/27
- [Guile-commits] 06/16: Refactor reify-primitives pass, Andy Wingo, 2017/12/27
- [Guile-commits] 08/16: Flesh out compile-bytecode for all heap objects, Andy Wingo, 2017/12/27
- [Guile-commits] 15/16: Unknown primcalls convert as calls, Andy Wingo, 2017/12/27
- [Guile-commits] 13/16: Contification also inlines "elide-values" pass, Andy Wingo, 2017/12/27
- [Guile-commits] 10/16: CPS conversion expands "list", Andy Wingo, 2017/12/27
- [Guile-commits] 11/16: Inline "elide-values" optimization into CPS conversion, Andy Wingo, 2017/12/27
- [Guile-commits] 09/16: Refactor lowering of Tree-IL primcalls to CPS, Andy Wingo, 2017/12/27