Russ Cox
e98412290e
interpreter checkpoint.
...
* generate different versions of binary operators
for each size of int and float, so that proper
truncating happens after each operation to
simulate the various sized ops.
* add slice expressions
* publish World.CompileStmtList, CompileDeclList, CompileExpr
* handle type-less expressions in CompileExpr
R=austin
DELTA=1459 (1327 added, 11 deleted, 121 changed)
OCL=34382
CL=35581
2009-10-11 02:35:53 -07:00
Russ Cox
11d3805579
clean more
...
R=r
DELTA=40 (9 added, 3 deleted, 28 changed)
OCL=35277
CL=35305
2009-10-03 10:38:03 -07:00
Russ Cox
17191281eb
add comment about C API.
...
somehow managed not to Put this before.
R=r
DELTA=3 (3 added, 0 deleted, 0 changed)
OCL=35289
CL=35294
2009-10-02 18:07:27 -07:00
Russ Cox
cbd40daf38
final Native Client package - av
...
R=r
DELTA=894 (887 added, 0 deleted, 7 changed)
OCL=35115
CL=35286
2009-10-02 13:25:26 -07:00
Russ Cox
16ce29802a
delete
...
R=r
DELTA=791 (0 added, 791 deleted, 0 changed)
OCL=35154
CL=35154
2009-09-30 11:06:35 -07:00
Russ Cox
8f8b735295
Native Client SRPC (simple RPC), both server and client.
...
R=r
DELTA=958 (958 added, 0 deleted, 0 changed)
OCL=35096
CL=35106
2009-09-29 16:00:28 -07:00
Russ Cox
5c2c57e5db
toy draw implementation
...
R=r
DELTA=471 (471 added, 0 deleted, 0 changed)
OCL=35090
CL=35099
2009-09-29 14:04:08 -07:00
Robert Griesemer
0c18d1387d
delete unused file
...
### 3656
XXstart 3656
XXedit 3656 src/cmd/5g/ggen.c
XXedit 3656 src/pkg/runtime/arm/asm.s
XXedit 3656 test/arm-pass.txt
# submit 3656
hg ci -u 'Kai Backman <kaib@golang.org>' -d '1253922857 25200' -l - <<'HGEOF'
support for go and defer.
go/test: passes 64% (218/339)
R=rsc
APPROVED=rsc
DELTA=60 (39 added, 0 deleted, 21 changed)
OCL=35018
CL=35018
2009-09-25 15:43:43 -07:00
Robert Griesemer
908c8f909e
fix to be able to run full gofmt test
...
TBR=r
OCL=35015
CL=35015
2009-09-25 15:43:43 -07:00
Austin Clements
3c8a1de720
Add eval and ogle to the build process so they can be kept up
...
to date.
R=rsc
APPROVED=rsc
DELTA=8 (6 added, 0 deleted, 2 changed)
OCL=35009
CL=35011
2009-09-25 11:36:27 -07:00
Austin Clements
4211384976
Switch ogle to in-tree gosym package. Delete my private sym
...
package. If a Sym is a function symbol, include a reference
to the Func so it's easily accessible when you're traversing
the list of all symbols. This diff is more interesting than
the proc switch because the gosym interface differs from the
old sym interface.
R=rsc
APPROVED=rsc
DELTA=1957 (34 added, 1868 deleted, 55 changed)
OCL=34969
CL=35008
2009-09-25 09:39:08 -07:00
Austin Clements
60098a41fb
Fix unused imports
...
R=rsc
APPROVED=rsc
DELTA=3 (0 added, 3 deleted, 0 changed)
OCL=34970
CL=35007
2009-09-25 09:38:10 -07:00
Austin Clements
cbcd146f5d
s/switch _ :=/switch/
...
R=rsc
APPROVED=rsc
DELTA=36 (0 added, 0 deleted, 36 changed)
OCL=34971
CL=35006
2009-09-25 09:37:35 -07:00
Robert Griesemer
f6faa9de1f
more cleanup
2009-09-24 17:25:25 -07:00
Robert Griesemer
0d17ebde1c
cleanup in personal dir:
...
- delete some unused files (copies archived elsewhere)
TBR=r
OCL=34994
CL=34994
2009-09-24 17:25:24 -07:00
Robert Griesemer
89a881dce4
delete obsolete Makefile
...
TBR=rsc
OCL=34978
CL=34978
2009-09-24 13:17:09 -07:00
Austin Clements
ffe83e582e
Switch ogle over to the in-tree debug/proc package. Fix
...
debug/proc to install to the right place. Delete the old
ptrace package. The diff looks huge, but it's mostly
s/ptrace/proc/.
R=rsc
APPROVED=rsc
DELTA=1940 (10 added, 1835 deleted, 95 changed)
OCL=34966
CL=34968
2009-09-24 09:07:47 -07:00
Austin Clements
495b3db88b
Fix declared and not used errors in ogle.
...
R=rsc
APPROVED=rsc
DELTA=8 (0 added, 2 deleted, 6 changed)
OCL=34854
CL=34965
2009-09-24 08:32:59 -07:00
Austin Clements
9f6328633d
Fix declared and not set errors in old ptrace package (still
...
used by ogle)
R=rsc
APPROVED=rsc
DELTA=4 (0 added, 1 deleted, 3 changed)
OCL=34852
CL=34964
2009-09-24 08:32:10 -07:00
Austin Clements
da4a22993e
Fix declared and not used errors and unused import errors in
...
the interpreter and update code to use ast.BasicDecl and
multi-type switch. There are still a lot of "switch _ :=
x.(type)" that should make use of the new type switch syntax,
but those will be a different CL.
R=rsc
APPROVED=rsc
DELTA=58 (16 added, 23 deleted, 19 changed)
OCL=34853
CL=34963
2009-09-24 08:25:14 -07:00
Austin Clements
73bac0416b
Fix declared and not used errors in old sym package (ogle
...
hasn't been ported to the new sym package yet)
R=rsc
APPROVED=rsc
DELTA=9 (0 added, 1 deleted, 8 changed)
OCL=34851
CL=34962
2009-09-24 08:19:16 -07:00
Austin Clements
ad9c6f7700
Rudimentary command shell for Ogle. Hack to prevent linker
...
from inlining newprocreadylocked. Fix type bridge's handling
of basic types. Include interpreter's Thread in bridged
native function calls.
; load . "6.out"
Started 6.out
; BpSet("main·merge")
; ContWait()
breakpoint at 0x400800
=> 400800 main·merge /home/austin/src-go1/usr/austin/ptrace/test/sort.go:19
; bt
=> 400800 main·merge /home/austin/src-go1/usr/austin/ptrace/test/sort.go:19
400b6a main·mergeSort+0x1be /home/austin/src-go1/usr/austin/ptrace/test/sort.go:34
448313 goexit /home/austin/src-go1/src/pkg/runtime/proc.c:133
; main.merge.a
{1}
; load . "pid:25753"
Attached to 25753
; bt
=> 479ddf syscall·Syscall+0x24 /home/austin/src-go1/src/pkg/syscall/asm_linux_amd64.s:24
47c011 syscall·Read+0x5d /home/austin/src-go1/src/pkg/syscall/zsyscall_linux_amd64.go:368
4119e5 os·*File·Read+0x5f /home/austin/src-go1/src/pkg/os/file.go:122
427bf3 bufio·*Reader·fill+0x116 /home/austin/src-go1/src/pkg/bufio/bufio.go:105
428361 bufio·*Reader·ReadSlice+0x195 /home/austin/src-go1/src/pkg/bufio/bufio.go:244
40204a ogle·Main+0x94 /home/austin/src-go1/usr/austin/ogle/cmd.go:226
40080f main·main+0xf /home/austin/src-go1/usr/austin/ogle/main.go:6
41c4b8 mainstart+0xf /home/austin/src-go1/src/pkg/runtime/amd64/asm.s:55
41531f goexit /home/austin/src-go1/src/pkg/runtime/proc.c:133
R=rsc
APPROVED=rsc
DELTA=433 (420 added, 2 deleted, 11 changed)
OCL=34410
CL=34782
2009-09-18 09:11:19 -07:00
Austin Clements
20583b5874
Implement remote variables
...
R=rsc
APPROVED=rsc
DELTA=282 (281 added, 0 deleted, 1 changed)
OCL=34407
CL=34781
2009-09-18 09:09:40 -07:00
Russ Cox
ae54cf73ca
last round: non-package code
...
R=r
DELTA=127 (38 added, 3 deleted, 86 changed)
OCL=34640
CL=34650
2009-09-15 12:42:24 -07:00
Austin Clements
eabcb10a32
Don't crash in Sym.ReceiverName for symbols like "x.x"
...
R=rsc
APPROVED=rsc
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=34404
CL=34406
2009-09-04 16:12:50 -07:00
Russ Cox
c702bdd828
script for running test programs in interpreter.
...
tweak test/literal.go to give more information.
R=austin
DELTA=45 (43 added, 0 deleted, 2 changed)
OCL=34381
CL=34398
2009-09-04 13:04:11 -07:00
Austin Clements
c7d27f88f8
Make world.Define{Const,Var} indicate if the definition was
...
successful.
R=rsc
APPROVED=rsc
DELTA=43 (31 added, 0 deleted, 12 changed)
OCL=34375
CL=34397
2009-09-04 12:55:25 -07:00
Austin Clements
fdf5efe43c
Update debugger to use Abort interface
...
R=rsc
APPROVED=rsc
DELTA=314 (132 added, 2 deleted, 180 changed)
OCL=34376
CL=34396
2009-09-04 11:58:00 -07:00
Austin Clements
05522cd51e
s/Thread/Goroutine/
...
R=rsc
APPROVED=rsc
DELTA=328 (112 added, 110 deleted, 106 changed)
OCL=34356
CL=34356
2009-09-03 17:41:25 -07:00
Russ Cox
920c6106ca
top-level func
...
R=austin
DELTA=21 (5 added, 10 deleted, 6 changed)
OCL=34355
CL=34355
2009-09-03 17:22:20 -07:00
Austin Clements
851497bc65
Thread Thread into Value Get/Set/Assign so other Value
...
implementations can abort. Make genConstant get values lazily
since we need the Thread now.
R=rsc
APPROVED=rsc
DELTA=299 (8 added, 19 deleted, 272 changed)
OCL=34353
CL=34353
2009-09-03 17:14:49 -07:00
Austin Clements
db27b5bcb1
Implement Go threads. Implement a general event system
...
including breakpoints and Go thread create/exit.
R=rsc
APPROVED=rsc
DELTA=751 (729 added, 6 deleted, 16 changed)
OCL=34345
CL=34351
2009-09-03 16:59:41 -07:00
Russ Cox
dcb1c5f5d4
convert testing to World.
...
start on Decl, but not working yet
R=austin
DELTA=762 (201 added, 205 deleted, 356 changed)
OCL=34335
CL=34349
2009-09-03 16:20:49 -07:00
Austin Clements
37aa6c9962
Fix uninstalling of breakpoints when a process exits. Process
...
exit is still handled poorly.
R=rsc
APPROVED=rsc
DELTA=6 (6 added, 0 deleted, 0 changed)
OCL=34288
CL=34315
2009-09-03 10:55:20 -07:00
Russ Cox
c9edbbd4d0
convenience wrapper
...
R=austin
DELTA=142 (128 added, 4 deleted, 10 changed)
OCL=34275
CL=34284
2009-09-02 17:15:43 -07:00
Russ Cox
dd7b583179
move abortChan into Thread.
...
reuse Thread in function calls.
R=austin
DELTA=59 (8 added, 7 deleted, 44 changed)
OCL=34266
CL=34266
2009-09-02 14:11:40 -07:00
Russ Cox
747cde8161
s/vm/Thread/
...
change eval functions from taking *Frame to *Thread
R=austin
DELTA=500 (7 added, 4 deleted, 489 changed)
OCL=34256
CL=34260
2009-09-02 12:03:20 -07:00
Austin Clements
72a11c5752
Update asInterface now that 6g type switch is fixed.
...
R=rsc
APPROVED=rsc
DELTA=31 (0 added, 4 deleted, 27 changed)
OCL=34251
CL=34259
2009-09-02 11:59:53 -07:00
Russ Cox
e905cb2df7
add generator for expr1.go
...
R=austin
DELTA=959 (404 added, 99 deleted, 456 changed)
OCL=34214
CL=34237
2009-09-01 22:57:53 -07:00
Austin Clements
ad9fabd769
Interpreter unit tests for statements and expressions
...
R=rsc
APPROVED=rsc
DELTA=1003 (1003 added, 0 deleted, 0 changed)
OCL=34223
CL=34227
2009-09-01 17:21:44 -07:00
Austin Clements
264641711b
Switch back to returning Value from the public expression
...
interface, but implement it better this time. Also, work
around a 6g bug in asInterface.
R=rsc
APPROVED=rsc
DELTA=39 (13 added, 1 deleted, 25 changed)
OCL=34211
CL=34217
2009-09-01 16:17:50 -07:00
Austin Clements
3dfbfdabce
Clean up the statement and expression public interfaces. The
...
only visible change is that evaluating an expression returns a
interface{} instead of a Value.
R=rsc
APPROVED=rsc
DELTA=60 (15 added, 26 deleted, 19 changed)
OCL=34206
CL=34208
2009-09-01 14:16:51 -07:00
Austin Clements
155fe7925b
Add stack frame support. Architectures are now responsible
...
for decoding closures. There is now no notion of a current OS
thread, though that needs to come back in the form of a
current Go thread. As a result, Process now implements Peek
and Poke and maps them to any stopped OS thread, since they
all share the address space anyways.
R=rsc
APPROVED=rsc
DELTA=322 (310 added, 3 deleted, 9 changed)
OCL=34136
CL=34201
2009-09-01 13:01:37 -07:00
Russ Cox
8c7eb44249
move generated code into its own file.
...
simplify expr by merging all simple eval functions
into a single eval interface{}.
R=austin
DELTA=1597 (730 added, 780 deleted, 87 changed)
OCL=34182
CL=34198
2009-09-01 11:51:33 -07:00
Austin Clements
30dcb13420
Split decls.go up, taking advantage of whole-package
...
compilation to put the definitions in reasonable places. No
code changes, just movement.
R=rsc
APPROVED=rsc
DELTA=479 (232 added, 247 deleted, 0 changed)
OCL=34067
CL=34069
2009-08-28 18:25:56 -07:00
Austin Clements
345c1bd473
Debugged processes, remote values, and remote type parser
...
R=rsc
APPROVED=rsc
DELTA=917 (917 added, 0 deleted, 0 changed)
OCL=34049
CL=34066
2009-08-28 18:04:35 -07:00
Austin Clements
0a969fa983
Debugger's remote runtime definitions.
...
R=rsc
APPROVED=rsc
DELTA=237 (237 added, 0 deleted, 0 changed)
OCL=33966
CL=34065
2009-08-28 18:04:18 -07:00
Austin Clements
c90bc34d75
Implement cap, len, and make, as well as the general framework
...
for built-in functions and type conversions. Extract out
common operations on expression nodes for converting them to
ints and implicitly dereferencing arrays.
R=rsc
APPROVED=rsc
DELTA=442 (365 added, 50 deleted, 27 changed)
OCL=34064
CL=34064
2009-08-28 18:03:03 -07:00
Austin Clements
d11a4b0dd4
Fix named types being defined to named types. In general, the
...
code assumes that the definition of a named type is not a
named type, but some code paths could violate that.
R=rsc
APPROVED=rsc
DELTA=9 (5 added, 2 deleted, 2 changed)
OCL=34046
CL=34053
2009-08-28 14:39:12 -07:00
Austin Clements
8fdc5b6041
Give NamedTypes a public interface
...
R=rsc
APPROVED=rsc
DELTA=32 (14 added, 1 deleted, 17 changed)
OCL=34043
CL=34043
2009-08-28 12:45:30 -07:00