[parrot/parrot] 3e7b3a: [pmc2c] support RETURN(PMC* const ...) and (INTVAL...

GitHub noreply at github.com
Fri May 30 20:43:57 UTC 2014

  Branch: refs/heads/rurban/pmc2c_orig2
  Home:   https://github.com/parrot/parrot
  Commit: 3e7b3a9d6dfe80e6aa5b8b064f90006b2df85e0b
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 May 2014)

  Changed paths:
    M lib/Parrot/Pmc2c/PCCMETHOD.pm

  Log Message:
  [pmc2c] support RETURN(PMC* const ...) and (INTVAL pos>>32)

const is no variable name.
allow full expressions as return value, not just names.

just skip ptr dereferences /^\**/. Note that the * return syntax is flawed,
as we should support both cases, return *ptr; and return ptr;
But we get away with it as we return only return (decl)*ptr and return (decl*)ptr;

  Commit: bf3896f722ef1092aa30842b2a68f4042eed90ce
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 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

  Commit: 6c4b317b284e62a46b89b6f5d2b5e5c6e6bf6233
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 May 2014)

  Changed paths:
    A tools/dev/vgp_old

  Log Message:
  [tools] add tools/dev/vgp_old using parrot_old

building parrot_old is much faster than parrot, when tracing leaks

  Commit: d89d02e4de82594bd4b8b5334869fb2a35609590
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 May 2014)

  Changed paths:
    M src/gc/system.c

  Log Message:
  [gc] simplify the stack scanning loop

just inc the stack ptr
reverse the hi <=> lo markers to make sense
comment the unsafe ptr dereference here, where asan and valgrind do complain.

  Commit: ee33e2fcf2fa7f31e35be9e45a0067f8e3e2c19c
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 May 2014)

  Changed paths:
    M src/pmc/task.pmc

  Log Message:
  Revert "[pmc] task: WB related errors"

This reverts commit ab201b1657795217c95c7f62c8f1bf71418687b0.

  Commit: 2d82f764a3dda24e6519122596b983504ef7aacd
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-05-30 (Fri, 30 May 2014)

  Changed paths:
    M src/pmc/addrregistry.pmc
    M src/pmc/alarm.pmc
    M src/pmc/arrayiterator.pmc
    M src/pmc/bigint.pmc
    M src/pmc/bignum.pmc
    M src/pmc/boolean.pmc
    M src/pmc/bytebuffer.pmc
    M src/pmc/callback.pmc
    M src/pmc/callcontext.pmc
    M src/pmc/capture.pmc
    M src/pmc/class.pmc
    M src/pmc/complex.pmc
    M src/pmc/continuation.pmc
    M src/pmc/coroutine.pmc
    M src/pmc/default.pmc
    M src/pmc/env.pmc
    M src/pmc/eventhandler.pmc
    M src/pmc/exception.pmc
    M src/pmc/exceptionhandler.pmc
    M src/pmc/exporter.pmc
    M src/pmc/filehandle.pmc
    M src/pmc/fixedbooleanarray.pmc
    M src/pmc/fixedfloatarray.pmc
    M src/pmc/fixedintegerarray.pmc
    M src/pmc/fixedpmcarray.pmc
    M src/pmc/fixedstringarray.pmc
    M src/pmc/float.pmc
    M src/pmc/hash.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/lexinfo.pmc
    M src/pmc/lexpad.pmc
    M src/pmc/mappedbytearray.pmc
    M src/pmc/multisub.pmc
    M src/pmc/namespace.pmc
    M src/pmc/nativepccmethod.pmc
    M src/pmc/nci.pmc
    M src/pmc/null.pmc
    M src/pmc/object.pmc
    M src/pmc/oplib.pmc
    M src/pmc/orderedhash.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/packfile.pmc
    M src/pmc/packfileannotation.pmc
    M src/pmc/packfileannotations.pmc
    M src/pmc/packfilebytecodesegment.pmc
    M src/pmc/packfileconstanttable.pmc
    M src/pmc/packfiledebug.pmc
    M src/pmc/packfiledirectory.pmc
    M src/pmc/packfileopmap.pmc
    M src/pmc/packfilerawsegment.pmc
    M src/pmc/packfilesegment.pmc
    M src/pmc/packfileview.pmc
    M src/pmc/parrotinterpreter.pmc
    M src/pmc/parrotlibrary.pmc
    M src/pmc/pmclist.pmc
    M src/pmc/pmcproxy.pmc
    M src/pmc/pointer.pmc
    M src/pmc/proxy.pmc
    M src/pmc/ptr.pmc
    M src/pmc/ptrbuf.pmc
    M src/pmc/ptrobj.pmc
    M src/pmc/resizablebooleanarray.pmc
    M src/pmc/resizablepmcarray.pmc
    M src/pmc/role.pmc
    M src/pmc/scalar.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/schedulermessage.pmc
    M src/pmc/socket.pmc
    M src/pmc/string.pmc
    M src/pmc/stringbuilder.pmc
    M src/pmc/stringhandle.pmc
    M src/pmc/stringiterator.pmc
    M src/pmc/structview.pmc
    M src/pmc/sub.pmc
    M src/pmc/task.pmc
    M src/pmc/timer.pmc
    M src/pmc/undef.pmc
    M src/pmc/unmanagedstruct.pmc
    M src/vtable.tbl

  Log Message:
  [pmc] Fixup most WBs. :no_wb for all non-writers, ... [1/2]

:manual_wb on VTABLE method calls on SELF which to a WB (avoid duplicates).
See new description at https://github.com/parrot/parrot/issues/1069

Compare: https://github.com/parrot/parrot/compare/acf468a89a05...2d82f764a3dd

More information about the parrot-commits mailing list