Permalink
Browse files

Merge branch 'sys_mem' into trunk

git-svn-id: https://svn.parrot.org/parrot/trunk@44291 d31e2699-5ff4-0310-a27c-f18f2fbe73fe
  • Loading branch information...
1 parent c1e0a2a commit 4833868fa12303c224d31ce4cb760b4171fe62e2 @bacek bacek committed Feb 22, 2010
Showing with 2,360 additions and 2,475 deletions.
  1. +77 −57 compilers/imcc/cfg.c
  2. +4 −2 compilers/imcc/cfg.h
  3. +10 −8 compilers/imcc/imc.c
  4. +2 −2 compilers/imcc/imcc.l
  5. +86 −70 compilers/imcc/imcc.y
  6. +2 −2 compilers/imcc/imclexer.c
  7. +943 −1,530 compilers/imcc/imcparser.c
  8. +19 −25 compilers/imcc/imcparser.h
  9. +1 −1 compilers/imcc/instructions.c
  10. +1 −1 compilers/imcc/optimizer.c
  11. +10 −10 compilers/imcc/parser_util.c
  12. +11 −11 compilers/imcc/pbc.c
  13. +19 −15 compilers/imcc/pcc.c
  14. +26 −18 compilers/imcc/reg_alloc.c
  15. +17 −17 compilers/imcc/sets.c
  16. +25 −13 compilers/imcc/sets.h
  17. +71 −62 compilers/imcc/symreg.c
  18. +34 −15 compilers/imcc/symreg.h
  19. +2 −2 config/gen/crypto/digest_pmc.in
  20. +1 −0 config/gen/makefiles/root.in
  21. +1 −1 config/gen/platform/generic/exec.c
  22. +3 −3 config/gen/platform/platform_interface.h
  23. +16 −8 include/parrot/charset.h
  24. +19 −9 include/parrot/debugger.h
  25. +9 −4 include/parrot/encoding.h
  26. +45 −0 include/parrot/gc_api.h
  27. +24 −7 include/parrot/memory.h
  28. +1 −1 include/parrot/oplib.h
  29. +37 −19 include/parrot/packfile.h
  30. +13 −13 lib/Parrot/Ops2c/Utils.pm
  31. +3 −2 src/call/args.c
  32. +1 −1 src/call/ops.c
  33. +48 −47 src/debug.c
  34. +2 −2 src/dynext.c
  35. +5 −9 src/dynpmc/gdbmhash.pmc
  36. +4 −7 src/dynpmc/rational.pmc
  37. +6 −5 src/embed.c
  38. +28 −27 src/events.c
  39. +2 −2 src/exit.c
  40. +2 −2 src/frame_builder.c
  41. +4 −8 src/gc/alloc_memory.c
  42. +120 −4 src/gc/api.c
  43. +5 −5 src/gc/gc_inf.c
  44. +104 −4 src/gc/gc_ms.c
  45. +7 −0 src/gc/gc_private.h
  46. +3 −3 src/interp/inter_create.c
  47. +2 −2 src/io/buffer.c
  48. +4 −4 src/io/core.c
  49. +6 −6 src/multidispatch.c
  50. +11 −12 src/oo.c
  51. +163 −131 src/packfile.c
  52. +4 −3 src/packfile/pf_items.c
  53. +2 −2 src/pbc_dump.c
  54. +38 −34 src/pbc_merge.c
  55. +5 −5 src/pmc/bigint.pmc
  56. +7 −7 src/pmc/bignum.pmc
  57. +1 −1 src/pmc/callcontext.pmc
  58. +6 −4 src/pmc/fixedbooleanarray.pmc
  59. +3 −3 src/pmc/fixedfloatarray.pmc
  60. +3 −3 src/pmc/fixedintegerarray.pmc
  61. +5 −5 src/pmc/fixedpmcarray.pmc
  62. +3 −3 src/pmc/fixedstringarray.pmc
  63. +19 −15 src/pmc/managedstruct.pmc
  64. +1 −1 src/pmc/nci.pmc
  65. +1 −1 src/pmc/opcode.pmc
  66. +2 −2 src/pmc/oplib.pmc
  67. +2 −3 src/pmc/orderedhash.pmc
  68. +1 −1 src/pmc/os.pmc
  69. +2 −2 src/pmc/packfile.pmc
  70. +8 −5 src/pmc/packfileannotations.pmc
  71. +3 −3 src/pmc/packfileconstanttable.pmc
  72. +1 −1 src/pmc/packfilefixupentry.pmc
  73. +3 −3 src/pmc/packfilefixuptable.pmc
  74. +2 −2 src/pmc/packfilerawsegment.pmc
  75. +6 −6 src/pmc/parrotinterpreter.pmc
  76. +13 −9 src/pmc/resizablebooleanarray.pmc
  77. +1 −2 src/pmc/resizablefloatarray.pmc
  78. +1 −1 src/pmc/resizableintegerarray.pmc
  79. +2 −1 src/pmc/resizablepmcarray.pmc
  80. +2 −2 src/pmc/resizablestringarray.pmc
  81. +2 −1 src/pmc/sockaddr.pmc
  82. +5 −3 src/pmc/sub.pmc
  83. +9 −17 src/runcore/cores.c
  84. +31 −28 src/runcore/main.c
  85. +5 −3 src/runcore/profiling.c
  86. +6 −6 src/string/api.c
  87. +30 −27 src/string/charset.c
  88. +16 −14 src/string/encoding.c
  89. +3 −3 src/string/encoding/utf16.c
  90. +3 −3 src/string/encoding/utf8.c
  91. +1 −1 src/string/primitives.c
  92. +8 −8 src/thread.c
  93. +1 −1 src/tsq.c
  94. +6 −6 src/utils.c
  95. +7 −7 src/vtables.c
  96. +21 −8 t/pmc/fixedbooleanarray.t
View

Large diffs are not rendered by default.

Oops, something went wrong.
View
@@ -100,8 +100,9 @@ void life_analysis(PARROT_INTERP, ARGIN(const IMC_Unit *unit))
PARROT_MALLOC
PARROT_CANNOT_RETURN_NULL
-Life_range * make_life_range(ARGMOD(SymReg *r), int idx)
+Life_range * make_life_range(PARROT_INTERP, ARGMOD(SymReg *r), int idx)
__attribute__nonnull__(1)
+ __attribute__nonnull__(2)
FUNC_MODIFIES(*r);
PARROT_WARN_UNUSED_RESULT
@@ -147,7 +148,8 @@ void search_predecessors_not_in(
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(unit))
#define ASSERT_ARGS_make_life_range __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(r))
+ PARROT_ASSERT_ARG(interp) \
+ , PARROT_ASSERT_ARG(r))
#define ASSERT_ARGS_natural_preheader __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(unit) \
, PARROT_ASSERT_ARG(loop_info))
View
@@ -39,12 +39,14 @@ static void imc_free_unit(PARROT_INTERP, ARGMOD(IMC_Unit *unit))
PARROT_CANNOT_RETURN_NULL
PARROT_MALLOC
-static IMC_Unit * imc_new_unit(IMC_Unit_Type t);
+static IMC_Unit * imc_new_unit(PARROT_INTERP, IMC_Unit_Type t)
+ __attribute__nonnull__(1);
#define ASSERT_ARGS_imc_free_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_imc_new_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
+#define ASSERT_ARGS_imc_new_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
/* HEADERIZER END: static */
@@ -153,7 +155,7 @@ imc_cleanup(PARROT_INTERP, ARGIN_NULLOK(void *yyscanner))
/*
-=item C<static IMC_Unit * imc_new_unit(IMC_Unit_Type t)>
+=item C<static IMC_Unit * imc_new_unit(PARROT_INTERP, IMC_Unit_Type t)>
Creates a new IMC_Unit of the given IMC_Unit_Type C<t>.
@@ -164,11 +166,11 @@ Creates a new IMC_Unit of the given IMC_Unit_Type C<t>.
PARROT_CANNOT_RETURN_NULL
PARROT_MALLOC
static IMC_Unit *
-imc_new_unit(IMC_Unit_Type t)
+imc_new_unit(PARROT_INTERP, IMC_Unit_Type t)
{
ASSERT_ARGS(imc_new_unit)
- IMC_Unit * const unit = mem_allocate_zeroed_typed(IMC_Unit);
- create_symhash(&unit->hash);
+ IMC_Unit * const unit = mem_gc_allocate_zeroed_typed(interp, IMC_Unit);
+ create_symhash(interp, &unit->hash);
unit->type = t;
return unit;
}
@@ -191,14 +193,14 @@ IMC_Unit *
imc_open_unit(PARROT_INTERP, IMC_Unit_Type t)
{
ASSERT_ARGS(imc_open_unit)
- IMC_Unit * const unit = imc_new_unit(t);
+ IMC_Unit * const unit = imc_new_unit(interp, t);
imc_info_t * const imc_info = IMCC_INFO(interp);
if (!imc_info->imc_units)
imc_info->imc_units = unit;
if (!imc_info->ghash.data)
- create_symhash(&imc_info->ghash);
+ create_symhash(interp, &imc_info->ghash);
unit->prev = imc_info->last_unit;
View
@@ -787,7 +787,7 @@ int yywrap(void* yyscanner) {
static macro_frame_t *
new_frame(PARROT_INTERP) {
static int label = 0;
- macro_frame_t * const tmp = mem_allocate_zeroed_typed(macro_frame_t);
+ macro_frame_t * const tmp = mem_gc_allocate_zeroed_typed(interp, macro_frame_t);
tmp->label = ++label;
tmp->s.line = IMCC_INFO(interp)->line;
@@ -1107,7 +1107,7 @@ define_macro(PARROT_INTERP, ARGIN(const char *name), ARGIN(const params_t *param
m->expansion = NULL;
}
else {
- m = mem_allocate_zeroed_typed(macro_t);
+ m = mem_gc_allocate_zeroed_typed(interp, macro_t);
if (!IMCC_INFO(interp)->macros)
IMCC_INFO(interp)->macros = parrot_new_cstring_hash(interp);
Oops, something went wrong.

0 comments on commit 4833868

Please sign in to comment.