[parrot/parrot] 8fe67f: [pmc2c] inline gc write barriers into vtable metho...
GitHub
noreply at github.com
Fri May 30 01:16:22 UTC 2014
Branch: refs/heads/rurban/pmc2c_orig2
Home: https://github.com/parrot/parrot
Commit: 8fe67f1f76ebe1a05afe84279c9cb2075c507936
https://github.com/parrot/parrot/commit/8fe67f1f76ebe1a05afe84279c9cb2075c507936
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M lib/Parrot/Pmc2c/Emitter.pm
M lib/Parrot/Pmc2c/Method.pm
M lib/Parrot/Pmc2c/PCCMETHOD.pm
M lib/Parrot/Pmc2c/PMC.pm
M lib/Parrot/Pmc2c/PMC/Object.pm
M lib/Parrot/Pmc2c/Parser.pm
M src/io/io_private.h
M src/pmc/alarm.pmc
M src/pmc/arrayiterator.pmc
M src/pmc/bigint.pmc
M src/pmc/boolean.pmc
M src/pmc/bytebuffer.pmc
M src/pmc/continuation.pmc
M src/pmc/env.pmc
M src/pmc/eventhandler.pmc
M src/pmc/exception.pmc
M src/pmc/exceptionhandler.pmc
M src/pmc/fixedbooleanarray.pmc
M src/pmc/fixedintegerarray.pmc
M src/pmc/handle.pmc
M src/pmc/hashiterator.pmc
M src/pmc/hashiteratorkey.pmc
M src/pmc/imageiofreeze.pmc
M src/pmc/imageiosize.pmc
M src/pmc/imageiostrings.pmc
M src/pmc/imageiothaw.pmc
M src/pmc/imccompiler.pmc
M src/pmc/integer.pmc
M src/pmc/iterator.pmc
M src/pmc/key.pmc
M src/pmc/lexpad.pmc
M src/pmc/managedstruct.pmc
M src/pmc/nativepccmethod.pmc
M src/pmc/nci.pmc
M src/pmc/object.pmc
M src/pmc/opcode.pmc
M src/pmc/oplib.pmc
M src/pmc/packfileannotation.pmc
M src/pmc/packfilesegment.pmc
M src/pmc/packfileview.pmc
M src/pmc/parrotinterpreter.pmc
M src/pmc/parrotlibrary.pmc
M src/pmc/pointer.pmc
M src/pmc/ptrbuf.pmc
M src/pmc/resizablepmcarray.pmc
M src/pmc/scheduler.pmc
M src/pmc/schedulermessage.pmc
M src/pmc/sockaddr.pmc
M src/pmc/sub.pmc
M src/pmc/task.pmc
M src/pmc/unmanagedstruct.pmc
Log Message:
-----------
[pmc2c] inline gc write barriers into vtable methods
:no_wb detection of :manual_wb, allow RETURN(decl var) also for VTABLE methods
add_write_barrier() now calls Parrot::Pmc2c::PCCMETHOD::rewrite_RETURNS.
Also add automatic WB for 0 or 1 return statements in the method body.
Other need either a RETURN or :manual_wb or :no_wb annotations.
Set manual_wb for :no_wb and PARROT_GC_WRITE_BARRIER in --dump
Detect it now earlier, in the parser
Missing write barriers typically cause the following errors:
t/examples/shootout.t: 16 examples/shootout/regexdna.pir SEGV
t/op/gc.t
t/pmc/*.t
Commit: 9bedf7d4390bd7e23ccb690e5a93491a918e4c81
https://github.com/parrot/parrot/commit/9bedf7d4390bd7e23ccb690e5a93491a918e4c81
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/arrayiterator.pmc
M src/pmc/capture.pmc
Log Message:
-----------
[pmc] partially use new WB markers
Commit: 2df7a82d606bd263655e45dd7596c7ebd8ba74ea
https://github.com/parrot/parrot/commit/2df7a82d606bd263655e45dd7596c7ebd8ba74ea
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
A .project
M src/pmc/arrayiterator.pmc
Log Message:
-----------
[pmc] GSOC start. arrayiterator :no_wb, removed unnecessary :manual_wb
Start of GSOC 2014 work. Task 1: improve GC write barriers.
See GH issue #1069
Commit: 6712c13d401ccff2b429c238b7d2581ea6e034b9
https://github.com/parrot/parrot/commit/6712c13d401ccff2b429c238b7d2581ea6e034b9
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/callcontext.pmc
Log Message:
-----------
[pmc] callcontext: manual WBs for shift_pmc & shift_string
Commit: e8d13dd6acc861829aefaf73f15840c55786e6f9
https://github.com/parrot/parrot/commit/e8d13dd6acc861829aefaf73f15840c55786e6f9
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/key.pmc
M src/pmc/task.pmc
Log Message:
-----------
[pmc] key, task: manual WBs for shift_*, pop_*
Commit: 00b3172c92573fd503bfeeaa969e86481fc4db48
https://github.com/parrot/parrot/commit/00b3172c92573fd503bfeeaa969e86481fc4db48
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/arrayiterator.pmc
M src/pmc/callcontext.pmc
Log Message:
-----------
[pmc] callcontext :no_wb and :manual_wb
Commit: 1150890d7cdefbcc9f3f82fcfb47b7542dca993b
https://github.com/parrot/parrot/commit/1150890d7cdefbcc9f3f82fcfb47b7542dca993b
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/key.pmc
Log Message:
-----------
[pmc] key WBs
Commit: 9f7ceca2d501be8298afd88a4fd5527467c24fd1
https://github.com/parrot/parrot/commit/9f7ceca2d501be8298afd88a4fd5527467c24fd1
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/arrayiterator.pmc
M src/pmc/callcontext.pmc
M src/pmc/key.pmc
M src/pmc/task.pmc
Log Message:
-----------
[pmc] arrayiterator, callcontext, key, task: WBs
Commit: 16a388de6c9df6070c22a19dddcab38d30c2fc7a
https://github.com/parrot/parrot/commit/16a388de6c9df6070c22a19dddcab38d30c2fc7a
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/capture.pmc
M src/pmc/hashiterator.pmc
M src/pmc/imageiothaw.pmc
Log Message:
-----------
[pmc] capture, HashIterator, ImageIoThaw: WBs
Commit: eefcdf9f756966b1ad2097d80ef11d2732b5c1b3
https://github.com/parrot/parrot/commit/eefcdf9f756966b1ad2097d80ef11d2732b5c1b3
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/default.pmc
M src/pmc/object.pmc
M src/pmc/orderedhashiterator.pmc
M src/pmc/pmclist.pmc
M src/pmc/resizablepmcarray.pmc
Log Message:
-----------
[pmc] default, object, orderedHashIterator, pmcList, resizablePmcArray: WBs
Commit: 3e8c9c926cfe85405d7002ee0612fba58b526d18
https://github.com/parrot/parrot/commit/3e8c9c926cfe85405d7002ee0612fba58b526d18
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/callcontext.pmc
M src/pmc/default.pmc
M src/pmc/hashiterator.pmc
M src/pmc/imageiothaw.pmc
M src/pmc/object.pmc
M src/pmc/orderedhashiterator.pmc
M src/pmc/pmclist.pmc
M src/pmc/resizablepmcarray.pmc
Log Message:
-----------
[pmc] fix some mixed c99 declarations with generated WBs
DEBUGGED - ISO C90 forbids mixed declarations =
Solved by adding WB after declarations ; expected declaration specifiers before ‘:’ token
Solved by removing :no_wb attributes for the flagged functions
Commit: ab201b1657795217c95c7f62c8f1bf71418687b0
https://github.com/parrot/parrot/commit/ab201b1657795217c95c7f62c8f1bf71418687b0
Author: ZYROz <ZYROz at users.noreply.github.com>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/task.pmc
Log Message:
-----------
[pmc] task: WB related errors
Commit: e307d3b56a81416f39c799a21c33e3a60d7fb92b
https://github.com/parrot/parrot/commit/e307d3b56a81416f39c799a21c33e3a60d7fb92b
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/fixedintegerarray.pmc
M src/pmc/fixedstringarray.pmc
Log Message:
-----------
[pmc] add RETURN and WB attrs to fixedintegerarray, fixedstringarray
Commit: b19be975bf2242500fc1d43846503f9586fe0858
https://github.com/parrot/parrot/commit/b19be975bf2242500fc1d43846503f9586fe0858
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/callcontext.pmc
Log Message:
-----------
[pmc] re-add some WBs to callcontext
Commit: b23618cd4fce68788f332d58a48647e6f414f00f
https://github.com/parrot/parrot/commit/b23618cd4fce68788f332d58a48647e6f414f00f
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/class.pmc
M src/pmc/imccompiler.pmc
M src/pmc/key.pmc
M src/pmc/namespace.pmc
M src/pmc/nci.pmc
M src/pmc/opcode.pmc
M src/pmc/packfileview.pmc
M src/pmc/parrotlibrary.pmc
M src/pmc/sockaddr.pmc
M src/pmc/socket.pmc
M src/pmc/timer.pmc
Log Message:
-----------
[pmc] fix wrong C99 UNUSED macros and add a few :no_wb
class,imccompiler,key,namespace,nci,opcode,packfileview,parrotlibrary,
sockaddr,socket,timer
Commit: 8189a6bf6cfc32c427c19548792b4a8519863d84
https://github.com/parrot/parrot/commit/8189a6bf6cfc32c427c19548792b4a8519863d84
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M src/pmc/arrayiterator.pmc
M src/pmc/callcontext.pmc
M src/pmc/continuation.pmc
M src/pmc/filehandle.pmc
M src/pmc/fixedstringarray.pmc
M src/pmc/imageiothaw.pmc
M src/pmc/integer.pmc
M src/pmc/key.pmc
M src/pmc/object.pmc
M src/pmc/packfileview.pmc
M src/pmc/resizablepmcarray.pmc
M src/pmc/task.pmc
Log Message:
-----------
[pmc] fix wrong WB annotations
and add needed manual WBs
Commit: c6cadd8e1ccdaac595bbd9a0a47927593bc7890c
https://github.com/parrot/parrot/commit/c6cadd8e1ccdaac595bbd9a0a47927593bc7890c
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M lib/Parrot/Pmc2c/Method.pm
Log Message:
-----------
[pmc2c] Method::decl fix Possibly forgotten UNUSED warning
for the WB rewrite.
Commit: 87eae0793fdbf87a809bb4f3faf48902d6bcc553
https://github.com/parrot/parrot/commit/87eae0793fdbf87a809bb4f3faf48902d6bcc553
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M lib/Parrot/Pmc2c/PCCMETHOD.pm
Log Message:
-----------
[pmc] support RETURN(PMC* const ...) and (INTVAL pos>>32)
const is no variable name.
And allow full expressions as return value, not just names.
just skip ptr dereferences /^\**/
Commit: acf468a89a05f540da1b2580cb51fe883dcf2a05
https://github.com/parrot/parrot/commit/acf468a89a05f540da1b2580cb51fe883dcf2a05
Author: Reini Urban <rurban at cpanel.net>
Date: 2014-05-29 (Thu, 29 May 2014)
Changed paths:
M t/pmc/fixedstringarray.t
Log Message:
-----------
[test] move test_gc to the end of t/pmc/fixedstringarray.t
all other tests pass fine, even with wrong write barriers
Compare: https://github.com/parrot/parrot/compare/8fe67f1f76eb^...acf468a89a05
More information about the parrot-commits
mailing list