[parrot/parrot] 3ae0e3: [test] fix t/steps/init/optimize-01.t for -O3

GitHub noreply at github.com
Mon Oct 19 16:04:10 UTC 2015


  Branch: refs/heads/master
  Home:   https://github.com/parrot/parrot
  Commit: 3ae0e321ddc95ba3ff7e43c24768fe7c2dbad3b2
      https://github.com/parrot/parrot/commit/3ae0e321ddc95ba3ff7e43c24768fe7c2dbad3b2
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M t/steps/init/optimize-01.t

  Log Message:
  -----------
  [test] fix t/steps/init/optimize-01.t for -O3

the optimization level needs to be the perl5 derived one
or now also -O3


  Commit: c491e9ccc46aac2eefe185319908d7166896a3b3
      https://github.com/parrot/parrot/commit/c491e9ccc46aac2eefe185319908d7166896a3b3
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog
    M src/pmc/stringbuilder.pmc

  Log Message:
  -----------
  [pmc] change StringBuilder overallocation

by 1.5, not 2. And for >8192 onto the next block size.
The optimal overallocation is the golden ration 1.618, but we prefer int ops.
A difference is not measurable.


  Commit: 6f1a676b967612ff677f125b708c5e466c2d6b40
      https://github.com/parrot/parrot/commit/6f1a676b967612ff677f125b708c5e466c2d6b40
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/pmc/stringbuilder.pmc

  Log Message:
  -----------
  [pmc] disable 2x StringBuilder.substr clone, GH #1123

STRING_substr already creates a copy for us, no need to copy it twice.
no regression.

Note that t/stress/gc.t started failing earlier, even in 7.0.0.


  Commit: 06cee234e51d52050cd096e375c2043de3275732
      https://github.com/parrot/parrot/commit/06cee234e51d52050cd096e375c2043de3275732
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/pmc/stringbuilder.pmc

  Log Message:
  -----------
  [pmc] StringBuilder.substr needs no WB

GH #1123. 1.14% faster


  Commit: 4b969fee91ee1dfeca0a4e7733750aacaa684317
      https://github.com/parrot/parrot/commit/4b969fee91ee1dfeca0a4e7733750aacaa684317
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/pmc/stringbuilder.pmc

  Log Message:
  -----------
  [pmc] Avoid StringBuilder copies on set_pmc, ...

and push_pmc, i_concatenate, when the arg is a StringBuilder
PMC already. 0.5% faster.


  Commit: cb4546be146d57ca5297034dee751821b207b642
      https://github.com/parrot/parrot/commit/cb4546be146d57ca5297034dee751821b207b642
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/io/stringhandle.c

  Log Message:
  -----------
  [core] optimize io_stringhandle_write_b

Reuse write buffer if large enough. This happens very often.
But surpringly no perf. improvement measurable.


  Commit: 02b34283b81ae67af6bf73653104db98c2d899c7
      https://github.com/parrot/parrot/commit/02b34283b81ae67af6bf73653104db98c2d899c7
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M t/src/extend.t

  Log Message:
  -----------
  [test] un-todo t/src/extend.t 19 on darwin

not repro anymore, at least with yosemite.
GH #856 SIGABRT with darwin threads


  Commit: fb96c9d6e6c005182b451b4d7747eafa70bc8cd8
      https://github.com/parrot/parrot/commit/fb96c9d6e6c005182b451b4d7747eafa70bc8cd8
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/pmc/resizablepmcarray.pmc

  Log Message:
  -----------
  [pmc] rpa gc optimizations

Re-enable the status from 6.11.0, not too many write barriers in
ResizablePMCArray methods. Not in shift as we only move the offset
and only when needed in resize.
But it does not give us back the lost 13% in parrot-bench, from 6.11
to 7.0.


  Commit: 4f9c39af6f17c83b7a31d433b7567070484433f5
      https://github.com/parrot/parrot/commit/4f9c39af6f17c83b7a31d433b7567070484433f5
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog
    M include/parrot/io.h
    M include/parrot/runcore_trace.h
    M src/gc/gc_ms2.c
    M src/gc/gc_private.h
    M src/io/api.c
    M src/io/buffer.c
    M src/io/io_private.h
    M src/io/socket.c
    M src/io/stringhandle.c
    M src/io/utilities.c
    M src/runcore/trace.c

  Log Message:
  -----------
  [cage] const io api arguments

also add an easier str dumper for -D100 gc tracings,
currenty only on ms2.


  Commit: ced642ad41ab60cb24a6548ca2983bda779614a1
      https://github.com/parrot/parrot/commit/ced642ad41ab60cb24a6548ca2983bda779614a1
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M include/parrot/io.h
    M src/io/io_private.h
    M src/io/pipe.c
    M src/io/stringhandle.c
    M src/io/utilities.c

  Log Message:
  -----------
  [cage] more const io api arguments


  Commit: 3c1b6f06597835be08ca9d19c44320a6f0c322ca
      https://github.com/parrot/parrot/commit/3c1b6f06597835be08ca9d19c44320a6f0c322ca
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M include/parrot/io.h
    M include/parrot/platform_interface.h
    M src/io/api.c
    M src/io/filehandle.c
    M src/io/io_private.h
    M src/io/pipe.c
    M src/io/socket.c
    M src/io/stringhandle.c
    M src/io/utilities.c
    M src/platform/generic/io.c
    M src/pmc/filehandle.pmc
    M src/runcore/trace.c

  Log Message:
  -----------
  [cage] ARGMOD->ARGIN const io api getters

Harmonize ARGMOD vs ARGIN in all IO functions.
Getters have a ARGIN handle, setters an ARGMOD.

io.h, latform_interface.h, io/filehandle.c, io/io_private.h,
io/pipe.c, io/socket.c, io/stringhandle.c, platform/generic/io.c

Not tested on msvc, most ARGMOD annotations do look wrong and need to be
improved.  this has only effect on msvc with sal


  Commit: 0631726f5325caeb9be057d1c75255037551512b
      https://github.com/parrot/parrot/commit/0631726f5325caeb9be057d1c75255037551512b
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M include/parrot/io.h
    M src/io/stringhandle.c

  Log Message:
  -----------
  [codingstd] for io changes


  Commit: 45cf48bc762c391223c4af0648ad49b1b960a2c4
      https://github.com/parrot/parrot/commit/45cf48bc762c391223c4af0648ad49b1b960a2c4
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog
    M src/gc/gc_ms.c
    M src/gc/gc_private.h

  Log Message:
  -----------
  [gc] Support -D1 GC stats with --ccflags=-DMEMORY_DEBUG for --gc=ms


  Commit: 0dbfd5280e0952cf351a2df5a0ae275ba8f4aa86
      https://github.com/parrot/parrot/commit/0dbfd5280e0952cf351a2df5a0ae275ba8f4aa86
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M config/gen/config_h/config_h.in
    M src/gc/api.c
    M src/gc/gc_gms.c
    M src/gc/gc_inf.c
    M src/gc/gc_ms.c
    M src/gc/gc_ms2.c
    M src/gc/gc_private.h

  Log Message:
  -----------
  Prepare deprecation of the ListChunk GC API, and src/list.c

See GH #1179.
See #define PARROT_BUFFERLIKE_LIST in config.h to use it, still.
imageiofreeze still uses it.


  Commit: 27c060d157f92f07d9c9c3ed27329419f85eb39c
      https://github.com/parrot/parrot/commit/27c060d157f92f07d9c9c3ed27329419f85eb39c
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/gc/gc_ms.c
    M src/gc/gc_private.h

  Log Message:
  -----------
  [gc] Improve -D1 GC stats for --gc=ms


  Commit: 6fcb42ea809d3c513525d3bd970628ee121c0c9d
      https://github.com/parrot/parrot/commit/6fcb42ea809d3c513525d3bd970628ee121c0c9d
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/gc/gc_private.h
    M src/gc/string_gc.c

  Log Message:
  -----------
  [gc] add some -D201 support to --gc=ms, for strings


  Commit: d8b1eb9363c69a24dddd30528ede02e229d989c2
      https://github.com/parrot/parrot/commit/d8b1eb9363c69a24dddd30528ede02e229d989c2
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/pmc/handle.pmc
    M src/pmc/stringhandle.pmc

  Log Message:
  -----------
  [pmc] add missing fields to StringHandle.clone

read_offset, filename, read_buffer, write_buffer, record_separator
also need to get cloned.
Probably related to GH #1196


  Commit: a7a05bbcd1c4b4be21717ff495d7ffaf3f4aefef
      https://github.com/parrot/parrot/commit/a7a05bbcd1c4b4be21717ff495d7ffaf3f4aefef
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/gc/string_gc.c
    M src/io/api.c

  Log Message:
  -----------
  [gc] fix a MS segv in Parrot_io_write_s

When certain functions cause a GC, the local string buffers may get
moved away, but local STRING* variables or worse, strings inside a
StringHandle may still point to the old location.

Lock the GC then for this section, mostly during IO writing to string handles,
when the handle needs to realloc its buffer (the stringhandle).
But reading into a buffer is also problematic. we really should know the
size beforehand.

One way to fix GH #1196, lock the GC sweep in those cases.
The other variants would be:
- lock the whole GC via Parrot_block_GC_mark
- unset the PObj_is_movable flag in the STRING that it may not be moved,
  as it is still locally referenced.

Remaining ms test failure: t/pmc/fixedstringarray.t


  Commit: 3495f89bca409adc040f3869542d58b269da97e9
      https://github.com/parrot/parrot/commit/3495f89bca409adc040f3869542d58b269da97e9
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M include/parrot/gc_api.h
    M src/gc/api.c
    M src/gc/gc_gms.c
    M src/gc/gc_inf.c
    M src/gc/gc_ms.c
    M src/gc/gc_ms2.c
    M src/gc/gc_private.h
    M src/gc/string_gc.c
    M src/io/api.c
    M t/op/gc-non-recursive.t

  Log Message:
  -----------
  [gc] Add Parrot_{un,}block_GC_move API #1197

and use it in the string_gc.c compaction code and the problem
in #1196.
run t/op/gc-non-recursive.t also with debugging, just with less loops
to catch more gc errors.
This does not work yet


  Commit: 2d15dc37a9f9ddf8499bc9fc09bdd6054ae5b73e
      https://github.com/parrot/parrot/commit/2d15dc37a9f9ddf8499bc9fc09bdd6054ae5b73e
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M src/gc/string_gc.c

  Log Message:
  -----------
  [gc] replace -DRESOURCE_DEBUG in string_gc by -D101


  Commit: a126c7d3d2f8bc5fbd48ae8a3c975f881cb2aba5
      https://github.com/parrot/parrot/commit/a126c7d3d2f8bc5fbd48ae8a3c975f881cb2aba5
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog

  Log Message:
  -----------
  ChangeLog: update for Parrot_{un,}block_GC_move API, travis


  Commit: 98ddbfab95b80f6a3472ce1b0a4b52dfb4ad0b98
      https://github.com/parrot/parrot/commit/98ddbfab95b80f6a3472ce1b0a4b52dfb4ad0b98
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M t/op/gc-non-recursive.t
    M t/steps/auto/warnings-01.t

  Log Message:
  -----------
  [test] TODO fragile t/steps/auto/warnings-01.t

testing for -Wunreachable-code with --cage is fragile.


  Commit: 6157da327fede704b33336e1ca4ec18c675f38eb
      https://github.com/parrot/parrot/commit/6157da327fede704b33336e1ca4ec18c675f38eb
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog
    M api.yaml

  Log Message:
  -----------
  api.yaml: add deprecation notice for GH #1179

Deprecated ListChunk GC API and src/list.c
Also update ChangeLog.


  Commit: d4a3ab9e08a90f443bee8f947e41d77129c24295
      https://github.com/parrot/parrot/commit/d4a3ab9e08a90f443bee8f947e41d77129c24295
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M config/gen/config_pm/myconfig.in

  Log Message:
  -----------
  myconfig: add gc_type

and re-order it a bit.


  Commit: 809c37e58a9837d755016f1303ff56e321544191
      https://github.com/parrot/parrot/commit/809c37e58a9837d755016f1303ff56e321544191
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2015-10-19 (Mon, 19 Oct 2015)

  Changed paths:
    M ChangeLog
    M src/gc/gc_inf.c
    M src/string/api.c
    M src/string/encoding/ascii.c

  Log Message:
  -----------
  [gc] Fixed --gc=inf string header allocation

add missing mark_str_header,
do not use pre-buffer for string headers.
clear the flags with allocate_string_header


Compare: https://github.com/parrot/parrot/compare/16eff4921974...809c37e58a98


More information about the parrot-commits mailing list