guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 13/25: Add CPS compilation support for mutable-vector?


From: Andy Wingo
Subject: [Guile-commits] 13/25: Add CPS compilation support for mutable-vector?
Date: Mon, 8 Jan 2018 09:25:03 -0500 (EST)

wingo pushed a commit to branch master
in repository guile.

commit 3cedc108d8aea7eb87dc355ed7ec3cfb6099841a
Author: Andy Wingo <address@hidden>
Date:   Sun Jan 7 16:41:40 2018 +0100

    Add CPS compilation support for mutable-vector?
    
    * module/system/base/types/internal.scm (heap-tags): Add
      immutable-vector? and mutable-vector?.
    * module/language/tree-il/cps-primitives.scm:
    * module/system/vm/disassembler.scm: Bump copyright lines.
---
 module/language/tree-il/cps-primitives.scm | 2 +-
 module/system/base/types/internal.scm      | 6 +++++-
 module/system/vm/disassembler.scm          | 3 ++-
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/module/language/tree-il/cps-primitives.scm 
b/module/language/tree-il/cps-primitives.scm
index d3f36c1..d3b261e 100644
--- a/module/language/tree-il/cps-primitives.scm
+++ b/module/language/tree-il/cps-primitives.scm
@@ -1,6 +1,6 @@
 ;;; Continuation-passing style (CPS) intermediate language (IL)
 
-;; Copyright (C) 2013, 2014, 2015, 2017 Free Software Foundation, Inc.
+;; Copyright (C) 2013- 2015, 2017-2018 Free Software Foundation, Inc.
 
 ;;;; This library is free software; you can redistribute it and/or
 ;;;; modify it under the terms of the GNU Lesser General Public
diff --git a/module/system/base/types/internal.scm 
b/module/system/base/types/internal.scm
index 3dc847d..1941d1f 100644
--- a/module/system/base/types/internal.scm
+++ b/module/system/base/types/internal.scm
@@ -1,5 +1,5 @@
 ;;; Details on internal value representation.
-;;; Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
+;;; Copyright (C) 2014, 2015, 2017, 2018 Free Software Foundation, Inc.
 ;;;
 ;;; This library is free software; you can redistribute it and/or modify it
 ;;; under the terms of the GNU Lesser General Public License as published by
@@ -34,6 +34,8 @@
             %tc7-symbol
             %tc7-variable
             %tc7-vector
+            %tc8-immutable-vector
+            %tc8-mutable-vector
             %tc7-weak-vector
             %tc7-string
             %tc7-heap-number
@@ -118,6 +120,8 @@
   (symbol           symbol?                #b1111111       #b0000101)
   (variable         variable?              #b1111111       #b0000111)
   (vector           vector?                #b1111111       #b0001101)
+  (immutable-vector immutable-vector?     #b11111111      #b10001101)
+  (mutable-vector   mutable-vector?       #b11111111      #b00001101)
   (weak-vector      weak-vector?           #b1111111       #b0001111)
   (string           string?                #b1111111       #b0010101)
   (heap-number      heap-number?           #b1111111       #b0010111)
diff --git a/module/system/vm/disassembler.scm 
b/module/system/vm/disassembler.scm
index 62f3d08..8664039 100644
--- a/module/system/vm/disassembler.scm
+++ b/module/system/vm/disassembler.scm
@@ -1,6 +1,6 @@
 ;;; Guile bytecode disassembler
 
-;;; Copyright (C) 2001, 2009, 2010, 2012, 2013, 2014, 2015, 2017 Free Software 
Foundation, Inc.
+;;; Copyright (C) 2001, 2009-2010, 2012-2015, 2017-2018 Free Software 
Foundation, Inc.
 ;;;
 ;;; This library is free software; you can redistribute it and/or
 ;;; modify it under the terms of the GNU Lesser General Public
@@ -199,6 +199,7 @@ address of that offset."
 (define-syntax-rule (define-heap-tag-annotation name pred mask tag)
   (set! heap-tag-annotations
         (cons `((,mask ,tag) ,(symbol->string 'pred)) heap-tag-annotations)))
+
 (visit-heap-tags define-heap-tag-annotation)
 
 (define (code-annotation code len offset start labels context push-addr!)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]