1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-02 21:10:27 +02:00
guile/benchmark-suite/benchmarks
Andy Wingo 5870188eb4 Replace "pr" struct fields with "pw" fields
* libguile/struct.h (SCM_VTABLE_BASE_LAYOUT): Layout is a "pr" field.
* module/ice-9/boot-9.scm (record-type-vtable): Record vtable fields are
  writable.
  (<parameter>): "pw" fields.
* module/oop/goops.scm (<class>, %compute-layout): <read-only> fields
  are "pw" underneath.
* module/rnrs/records/procedural.scm (record-type-vtable)
  (record-constructor-vtable, make-record-type-descriptor): Use "pw"
  fields in vtables.
* module/srfi/srfi-35.scm (%condition-type-vtable)
  (struct-layout-for-condition): "pw" fields in vtables.
* test-suite/tests/goops.test:
* test-suite/tests/structs.test: Use "pw" fields only.
* benchmark-suite/benchmarks/structs.bm: Update for make-struct/no-tail,
  to use pw fields, and also to remove useless tests that the compiler
  would optimize away.
* doc/ref/api-data.texi (Vtables): Add a note about the now-vestigial
  permissions character and update documentation.
  (Structure Basics, Meta-Vtables): Update examples.
* libguile/hash.c (scm_i_struct_hash): Remove code that would handle
  opaque/self fields.
* libguile/print.h (SCM_PRINT_STATE_LAYOUT): Use "pw" fields.
* libguile/struct.c (scm_struct_init): Simplify check for hidden
  fields.
* libguile/values.c (scm_init_values): Field is "pw".
2017-09-23 15:33:02 +02:00
..
0-reference.bm Changes so that benchmark-guile runs successfully 2009-09-22 00:39:57 +01:00
arithmetic.bm avoid inexact iteration count in benchmarks 2012-04-23 21:46:06 +02:00
bytevectors.bm rename (rnrs bytevector) to (rnrs bytevectors) 2010-06-01 13:26:11 +02:00
chars.bm Changes so that benchmark-guile runs successfully 2009-09-22 00:39:57 +01:00
continuations.bm Increase benchmark iterations to improve precision in comparisons over time 2009-11-03 22:50:07 +00:00
hash.bm Add 'string-hash' benchmarks. 2015-01-11 22:37:00 +01:00
if.bm Changes so that benchmark-guile runs successfully 2009-09-22 00:39:57 +01:00
logand.bm Changes so that benchmark-guile runs successfully 2009-09-22 00:39:57 +01:00
ports.bm Merge branch 'stable-2.0' 2014-09-30 03:50:47 -04:00
r6rs-arithmetic.bm avoid inexact iteration count in benchmarks 2012-04-23 21:46:06 +02:00
read.bm Use symbols instead of _IONBF values as args to setvbuf 2016-04-04 16:30:56 +02:00
srfi-1.bm add map and for-each benchmarks 2011-05-08 17:38:10 +02:00
srfi-13.bm Increase benchmark iterations to improve precision in comparisons over time 2009-11-03 22:50:07 +00:00
strings.bm Benchmarks for string comparisons 2011-03-19 15:25:28 -07:00
structs.bm Replace "pr" struct fields with "pw" fields 2017-09-23 15:33:02 +02:00
subr.bm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
uniform-vector-read.bm Use symbols instead of _IONBF values as args to setvbuf 2016-04-04 16:30:56 +02:00
vectors.bm Add struct & vector benchmarks. 2009-12-11 13:03:46 +01:00
vlists.bm Add `(ice-9 vlist)'. 2010-02-03 00:02:14 +01:00
write.bm Fix copyright year and module name of `write.bm'. 2010-09-15 18:27:47 +02:00