Closed Bug 476785 Opened 17 years ago Closed 7 years ago

Finessing AVMPLUS_VERBOSE mode

Categories

(Tamarin Graveyard :: Virtual Machine, enhancement)

x86
macOS
enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX
Future

People

(Reporter: lhansen, Unassigned)

References

Details

Attachments

(3 files)

The verbose mode is a little messy and could probably be cleaned up. 1) It is enabled in release-debugger builds, because it is a handy debugging tool. This has some unpleasant side effects, notably there is substantial code size increase in the interpreter because each case starts with "if (pool->verbose) showState(<8 arguments>)". We can avoid that for the switch interpreter but not for threaded code. For the JIT and the word code translator we could instead emit code that explicitly implements verbose mode, if -Dverbose was given on the command line; for the abc interpreter the code need not be duplicated and can be placed right before the switch, at a modest cost in performance. 2) It is not in debug builds but not in release builds, so release-only problems have to contend with extra variables. For example, verbose mode retains information about function and class names that are lost in release mode. It seems likely that this information should be kept around even in release builds (or dropped from normal verbose mode builds, if the memory costs are too great). 3) If we get around to doing better debugging tools (gdb integration, say) then maybe verbose mode should be disabled by default in all configurations. 4) Some have suggested decoupling instruction tracing in the interpreter from other functionality, esp the JIT dumps
Target Milestone: --- → Future
This patch addresses item 4 and actually fixes the broken verbose output that current exists in debug builds.
Attachment #405811 - Flags: review?(stejohns)
Applies on top of the previous patch and adds support for -Dverbose=builtins,... which provides behaviour similar to the old -Dverbose_init flag. BTW, verbose_init has been broken for some time. The patch removes any remnants of it.
Attachment #405880 - Flags: superreview?(lhansen)
Attachment #405880 - Flags: review?(stejohns)
Comment on attachment 405811 [details] [diff] [review] verbose= flag supper Nice.
Attachment #405811 - Flags: review?(stejohns) → review+
Attachment #405880 - Flags: superreview?(lhansen) → superreview+
Attachment #405880 - Flags: review?(stejohns)
The pushed patch is slightly different from those posted above, in that it includes -Dverbose=memstats,sweep,occupancy and 'jitfull' was changed to 'jit'. see http://hg.mozilla.org/tamarin-redux/rev/d6bc664a2efb
Move the default-verbose-bits to a constant so other embedders can use it
Attachment #405956 - Flags: review?(rreitmai)
Comment on attachment 405956 [details] [diff] [review] Move default bits to a constant both options are ugly, but at least this one won't get stale.
Attachment #405956 - Flags: review?(rreitmai) → review+
(In reply to comment #6) > (From update of attachment 405956 [details] [diff] [review]) > both options are ugly, but at least this one won't get stale. ugly is as ugly does. pushed as changeset: 2768:6291692d9825
Severity: normal → enhancement
Flags: flashplayer-qrb+
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: