Closed Bug 466935 Opened 16 years ago Closed 16 years ago

TM: non-DEBUG JS_JIT_SPEW doesn't build, again

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: bzbarsky, Assigned: bzbarsky)

References

Details

(Keywords: fixed1.9.1)

Attachments

(1 file)

It worked for a bit, but it's kinda broken now.  Main issues:

1)  Various JS_JIT_SPEW stuff in jstracer.cpp and jsregexp.cpp uses
    FramePCOffset, which is ifdef DEBUG.  Can we make it not DEBUG-only, or
    somehow condition it on JS_JIT_SPEW?
2)  jsregexp.cpp assumes that it can access LirBuffer::names ifdef JS_JIT_SPEW.
    But that's an LIR thing, not controlled by JS_JIT_SPEW at all.  It's
    controlled by the nanojit verbose_only macro.  In theory, that's defined
    when NJ_VERBOSE is defined, but just defining without defining DEBUG
    doesn't seem to build (more people making assumptions, I think).  Can we
    just wrap the LirBuffer::names access in DEBUG or NJ_VERBOSE ifdefs and not
    worry here?
3)  jsregexp uses VerboseWriter, which is also conditioned on NJ_VERBOSE.

I'm not sure whether jsregexp wants to just condition the whole thing on DEBUG instead of JS_JIT_SPEW and be done with it.
For what it's worth, I'm happy to post some patches once brendan tells me how he wants FramePCOffset to work.
If FramePCOffset can be shown to be inlined only and to add no code size to optimized builds, please do remove the DEBUG ifdef. Thanks!

Need spin-off bug for items 2 and 3?

/be
OS: Mac OS X → All
Hardware: PC → All
This makes things compile.  I'm happy to spin off an additional bug for making the jsregexp logging work in opt builds if desired.  I did verify that there is no opt build codesize increase with this change.
Assignee: general → bzbarsky
Status: NEW → ASSIGNED
Attachment #351577 - Flags: review?(dmandelin)
Attachment #351577 - Flags: review?(brendan)
Attachment #351577 - Flags: review?(dmandelin) → review+
Blocks: 466944
Attachment #351577 - Flags: review?(brendan) → review+
Pushed http://hg.mozilla.org/tracemonkey/rev/8aaf017a677c

Bug 466944 covers regexp stuff.
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Attachment #351577 - Flags: approval1.9.1+
Keywords: fixed1.9.1
Flags: in-testsuite-
Flags: in-litmus-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: