| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bring back support for incrementally printing the trace to the screen (stderr).
I previously thought I didn't need this as long as I'm always incrementally
saving to the 'last_run' trace file. But I quickly ran into a use for it:
when I want to see a complete trace including switching into the sandbox's
trace and back out again.
So there are now two separate commandline flags:
--trace to save the trace to file
--dump to print the trace to screen
The former won't handle sandbox traces. But the latter will.
I'm deemphasizing --dump in the help message since it should be rarely
used.
One other situation where I've used stderr in the past is for just raw
convenience. But trying to always use the trace was a foolish consistency.
Conclusion:
a) For simple debugging, feel free to just use cout/cerr. Delete them
before committing.
b) If the prints get too complex, switch to the trace and browse_trace
tool.
c) If using nested sandboxes, emit to stderr, redirect to file, and browse_trace.
I've gone back and forth on these questions in the past; now I'm trying
to be a little more rigorous about capturing reasoning.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've extracted it into a separate binary, independent of my Mu prototype.
I also cleaned up my tracing layer to be a little nicer. Major improvements:
- Realized that incremental tracing really ought to be the default.
And to minimize printing traces to screen.
- Finally figured out how to combine layers and call stack frames in a
single dimension of depth. The answer: optimize for the experience of
`browse_trace`. Instructions occupy a range of depths based on their call
stack frame, and minor details of an instruction lie one level deeper
in each case.
Other than that, I spent some time adjusting levels everywhere to make
`browse_trace` useful.
|
|
|
|
|
|
| |
Clean up the debugging flow, and go over help messages for inconsistencies.
They predate the new Readme, which takes some time to describe the x86
instruction set.
|
| |
|
|
|
|
|
| |
New '--dump' commandline arg to incrementally print trace lines to stderr
as they're emitted.
|
| |
|
|
|
|
|
| |
We want to always print numbers in hex. This should make that a little
more comprehensive.
|
|
|
|
|
| |
Side effect: better error messages when the tangler does something
unexpected.
|
|
|
|
|
| |
It would be confusing to use negative numbers in raw hex. But we'll rely
on programmer taste there.
|
| |
|
|
|
|
|
|
| |
The current approach to warnings is workable. We'll just never print
warnings to the screen in tests. In tests you can do whatever you want.
This is simpler than messing with levels of warnings.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Draft attempt at cleaning up warnings, but this isn't quite right.
We still emit warnings for every level-1 scenario, and hiding for each
of them seems painful.
Even if we do that, level-2 scenarios would want to hide level-3 and
over warnings, but *not* level-1 warnings. So we need a cardinal number
rather than booleans.
|
| |
|
| |
|
| |
|
|
|
|
| |
This ports commit 4421 to the subx/ program.
|
|
|
|
|
| |
Never mind, let's drop unused/vestigial altogether. Use absence of names
to signal unused arguments.
|
|
|
|
| |
Port commit 4235 to subx.
|
|
|
|
| |
Fix CI.
|
| |
|
| |
|
|
|