#1105: change to a libjit based frame builder
----------------------+-----------------------------------------------------
Reporter: plobsing | Owner: jkeenan
Type: patch | Status: assigned
Priority: normal | Milestone:
Component: core | Version: branch
Severity: medium | Keywords:
Lang: | Patch: applied
Platform: |
----------------------+-----------------------------------------------------
Comment(by plobsing):
Replying to [comment:19 jkeenan]:
> It doesn't seem right to make a determination of a Parrot::Configure
element in one step only to re-set it two configuration steps later. Can
anyone shed light on this issue?
That worked when the libjit steps were the last of their types because the
config::gen::libjit settings would override the config::gen::frames
settings.
The root problem is this: PARROT_HAS_EXEC_PROTECT is a misnomer. It should
be set whenever the JIT subsystem has to manage its own executable memory
(which is likely always with external JIT systems). In fact, the small
gain in an edge case (using a homebrew jit, which we no longer have) is
probably not worth the confusion this flag will cause as we add JIT
systems. I hesitate to remove it as it increases the scope of this patch.
A compounding problem is that the test suite does not exercise JIT buffer
cloning and has very little testing of JIT buffer destroy. It also will
likely not catch memory leaks created when the JIT subsystem memory
management routines are not being called.
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1105#comment:20>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets