[parrot/parrot] f57f39: Add need_write_barrier_flag and standard flags set...

noreply at github.com noreply at github.com
Mon Feb 7 09:54:12 UTC 2011


Branch: refs/heads/generational_gc
Home:   https://github.com/parrot/parrot

Commit: f57f3925ae1c3cd5abc51847de43e2811cd5011a
    https://github.com/parrot/parrot/commit/f57f3925ae1c3cd5abc51847de43e2811cd5011a
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-06 (Sun, 06 Feb 2011)

Changed paths:
  M include/parrot/pobj.h

Log Message:
-----------
Add need_write_barrier_flag and standard flags setters


Commit: 63c685d381427823cecd2111db80470650efed28
    https://github.com/parrot/parrot/commit/63c685d381427823cecd2111db80470650efed28
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M src/gc/gc_gms.c

Log Message:
-----------
Use PObj flag 'accessors'


Commit: 15641e42dec869b49abb13c39dde9923bd1d4bee
    https://github.com/parrot/parrot/commit/15641e42dec869b49abb13c39dde9923bd1d4bee
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M include/parrot/gc_api.h

Log Message:
-----------
Add GC_WRITE_BARRIER macro.


Commit: 30c2e124fea24b24aba50b50457f9d9b0744c25d
    https://github.com/parrot/parrot/commit/30c2e124fea24b24aba50b50457f9d9b0744c25d
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M lib/Parrot/Pmc2c/PCCMETHOD.pm
  M lib/Parrot/Pmc2c/PMC/WB.pm
  M src/gc/gc_gms.c

Log Message:
-----------
Use GC_WRITE_BARRIER macro and set need_write_barrier flag in GMS.


Commit: 1959d922ae363e90d624c55bea4eb6a56d7f9b23
    https://github.com/parrot/parrot/commit/1959d922ae363e90d624c55bea4eb6a56d7f9b23
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M src/call/args.c
  M src/pmc/default.pmc
  M src/pmc/nci.pmc
  M src/sub.c

Log Message:
-----------
Use GC_WRITE_BARRIER macro


Commit: be32682387e8efe42cdcfe899dc0b10aa616bd50
    https://github.com/parrot/parrot/commit/be32682387e8efe42cdcfe899dc0b10aa616bd50
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M lib/Parrot/Pmc2c/MethodEmitter.pm
  M lib/Parrot/Pmc2c/PMCEmitter.pm
  M lib/Parrot/Pmc2c/Parser.pm

Log Message:
-----------
Always generate write_barrier for VTABLE.

Reason for it next:
1. Aggregate PMC in Gen0.
2. We invoke write_barrier(PMC). Which is ignored.
3. VTABLE_foo() allocate new PMC.
4. Aggregate PMC moved into Gen1.
5. Content of PMC gets updated without triggering write barrier.

To avoid it we store result of original VTABLE and invoke write_barrier
after.


Commit: e54611c77f4c26e58a969d3d4653410b92e0b347
    https://github.com/parrot/parrot/commit/e54611c77f4c26e58a969d3d4653410b92e0b347
Author: Vasily Chekalkin <bacek at bacek.com>
Date:   2011-02-07 (Mon, 07 Feb 2011)

Changed paths:
  M src/gc/gc_gms.c
  M src/pmc.c

Log Message:
-----------
Switch GMS to use 'always-write-barriered-vtables' logic without WB variant vtable




More information about the parrot-commits mailing list