diff options
| author | Rob Pike <r@golang.org> | 2008-09-12 09:44:41 -0700 |
|---|---|---|
| committer | Rob Pike <r@golang.org> | 2008-09-12 09:44:41 -0700 |
| commit | 6e8dbc2051ab5face6278e4056eefd5aea6c329b (patch) | |
| tree | 93eeb9ec4ccb53ef9685d3f689f7fb97c3654050 /src/runtime/runtime.h | |
| parent | 96b906498abad3eea2d6ea7e401917ec431bef83 (diff) | |
| download | go-6e8dbc2051ab5face6278e4056eefd5aea6c329b.tar.xz | |
- catch trace traps
- disassemble the instructions in a trace trap to see if it's a run-time trap
- if so, print relevant info
- avoid double-printing traceback on panic
R=ken,rsc
DELTA=66 (50 added, 7 deleted, 9 changed)
OCL=15199
CL=15224
Diffstat (limited to 'src/runtime/runtime.h')
| -rw-r--r-- | src/runtime/runtime.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/runtime/runtime.h b/src/runtime/runtime.h index c64e5b37e7..11d3fdac8e 100644 --- a/src/runtime/runtime.h +++ b/src/runtime/runtime.h @@ -207,6 +207,7 @@ M* allm; G* allg; int32 goidgen; extern int32 gomaxprocs; +extern int32 panicking; /* * common functions and data @@ -236,6 +237,7 @@ uint32 cmpstring(string, string); void initsig(void); void traceback(uint8 *pc, uint8 *sp, G* gp); void tracebackothers(G*); +int32 inlinetrap(int32 sig, byte* pc); int32 open(byte*, int32, ...); int32 read(int32, void*, int32); int32 write(int32, void*, int32); |
