1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-23 12:00:21 +02:00

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.
This commit is contained in:
Andy Wingo 2018-01-07 16:41:40 +01:00
parent 94f8f70b22
commit 3cedc108d8
3 changed files with 8 additions and 3 deletions

View file

@ -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

View file

@ -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)

View file

@ -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!)