Commit Graph

3421 Commits

Author SHA1 Message Date
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
Russ Cox
45eadcf4b8 add ParseDeclList
R=austin
DELTA=34  (34 added, 0 deleted, 0 changed)
OCL=34280
CL=34352
2009-09-03 17:01:10 -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
55ba20ec2d parse expression statements beginning with
arithmetic unary operators + - ^

R=r
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=34338
CL=34350
2009-09-03 16:37:02 -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
Russ Cox
620dc595ff missed in last compiler change
R=ken
OCL=34348
CL=34348
2009-09-03 16:18:03 -07:00
Russ Cox
74bb34c107 fix linux 386 build
R=austin
DELTA=140  (128 added, 0 deleted, 12 changed)
OCL=34344
CL=34347
2009-09-03 16:17:21 -07:00
Russ Cox
f2a8cd5ad9 corrected bug187; dropped on the floor somehow
R=austin
DELTA=23  (23 added, 0 deleted, 0 changed)
OCL=34340
CL=34346
2009-09-03 16:17:06 -07:00
Russ Cox
33be0c6465 nil in DeepEqual
R=r
DELTA=13  (5 added, 6 deleted, 2 changed)
OCL=34337
CL=34343
2009-09-03 15:45:43 -07:00
Russ Cox
107d404378 stop using filename for disambiguation within a package.
R=ken
OCL=34339
CL=34341
2009-09-03 15:23:21 -07:00
Russ Cox
a18208fb60 fix range on invalid utf8 bug
R=r
DELTA=42  (21 added, 20 deleted, 1 changed)
OCL=34328
CL=34333
2009-09-03 13:56:06 -07:00
Rob Pike
cf336b10df partial rune at end makes string range loop forever
R=rsc
DELTA=20  (20 added, 0 deleted, 0 changed)
OCL=34330
CL=34332
2009-09-03 13:33:16 -07:00
Rob Pike
7f0dd8b1b7 new benchmark results.
main changes:
	gccgo is much slower on  binary-tree and fannkuch
	6g seems to struggle with alignment of loops in nbody (dignosis uncertain)
	6g is a little faster at regexps and concurrency

R=rsc
DELTA=93  (93 added, 0 deleted, 0 changed)
OCL=34320
CL=34322
2009-09-03 11:41:01 -07:00
Russ Cox
262b6462aa fix bug187 (itself buggy)
R=austin
DELTA=26  (0 added, 26 deleted, 0 changed)
OCL=34294
CL=34317
2009-09-03 10:59:52 -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
Robert Griesemer
eea6b0d8d5 simplify extractEBNF code
R=rsc
DELTA=15  (3 added, 2 deleted, 10 changed)
OCL=34307
CL=34314
2009-09-03 10:53:27 -07:00
Robert Griesemer
d3ffc5e683 silence hlint
R=r
DELTA=7  (0 added, 4 deleted, 3 changed)
OCL=34310
CL=34312
2009-09-03 10:35:09 -07:00
Rob Pike
d4903abeae use %L in listings so we see source line number in easy format
R=ken
DELTA=9  (0 added, 0 deleted, 9 changed)
OCL=34309
CL=34311
2009-09-03 10:24:38 -07:00
Robert Griesemer
6384cac343 linkify EBNF sections in spec when served via godoc
R=rsc
DELTA=217  (216 added, 0 deleted, 1 changed)
OCL=34279
CL=34306
2009-09-03 09:58:13 -07:00
Russ Cox
789e58cb04 unsafe is not declared in the outermost scope
R=gri
DELTA=3  (0 added, 3 deleted, 0 changed)
OCL=34305
CL=34305
2009-09-03 09:46:24 -07:00
Russ Cox
a1391c2d13 fix one bug involving [...] constructors.
added iant's bug202 (in main code)
and ken's bug203 (in init function).
bug187 remains at large.

R=ken
OCL=34293
CL=34293
2009-09-02 23:26:13 -07:00
Stephen Ma
5db1d3867f Update restriction on declarations of methods.
APPROVED=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=34289
CL=34289
2009-09-02 20:09:25 -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
Rob Pike
9e85c790e5 fix initialization of noreturn
R=ken
DELTA=3  (0 added, 0 deleted, 3 changed)
OCL=34283
CL=34283
2009-09-02 17:14:30 -07:00
Rob Pike
8aec612a80 for loops
comment out incomplete stuff

R=rsc
DELTA=61  (58 added, 0 deleted, 3 changed)
OCL=34278
CL=34281
2009-09-02 16:41:41 -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
a03764aa50 fix build
TBR=gri
OCL=34264
CL=34264
2009-09-02 13:13:40 -07:00
Robert Griesemer
115c62de8d heap algorithm
R=rsc
DELTA=196  (194 added, 0 deleted, 2 changed)
OCL=34234
CL=34263
2009-09-02 12:54:38 -07:00
Russ Cox
e10ca39d04 add debug/gosym and debug/proc to build
(was waiting until after release)

R=austin
DELTA=5  (5 added, 0 deleted, 0 changed)
OCL=34222
CL=34261
2009-09-02 12:03:33 -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
0b3407e426 fix bug introduced in 33293
R=r
OCL=34253
CL=34253
2009-09-02 11:12:42 -07:00
Russ Cox
ee2d5128d6 the last bug involving type hashes
R=ken
OCL=34244
CL=34249
2009-09-02 09:09:32 -07:00
Russ Cox
58a0d6cebc two gob nits found with stricter 6g
(6g had a few pretty major bugs
where it was more lax than it should
have been when checking when things
satisfied interfaces; i fixed them and
this turned up.)

R=r
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=34243
CL=34248
2009-09-02 09:03:42 -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
Russ Cox
bebe06a784 type switch bug involving function parameter names
R=ken
OCL=34232
CL=34232
2009-09-01 18:04:49 -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
2364f8c30c Don't crash for regexps > 19 characters.
R=r
APPROVED=r
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=34216
CL=34220
2009-09-01 16:46:16 -07:00
Russ Cox
59db1f7bb1 template:
* do full lookup for {.section},
  	so that it is always allowed to replace
	{Foo} with {.section Foo}{@}{.end}
  * treat False as empty so that .section can
  	be used to test bools

R=r
DELTA=29  (21 added, 0 deleted, 8 changed)
OCL=34215
CL=34219
2009-09-01 16:31:49 -07:00
Russ Cox
f56e6fd786 make debug/proc "build" on more architectures
R=austin
DELTA=17  (0 added, 16 deleted, 1 changed)
OCL=34213
CL=34218
2009-09-01 16:19:14 -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
Russ Cox
f277ebfc76 import debug/gosym from usr/austin/sym
R=austin
DELTA=958  (956 added, 0 deleted, 2 changed)
OCL=34180
CL=34212
2009-09-01 16:11:17 -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
Russ Cox
27c4e7e74e catch package net import "net" for release
R=ken
OCL=34205
CL=34207
2009-09-01 14:12:09 -07:00
Robert Griesemer
237c8ab455 updated Implementation differences section
R=rsc,r
DELTA=4  (3 added, 0 deleted, 1 changed)
OCL=34204
CL=34204
2009-09-01 14:07:30 -07:00
Rob Pike
2f5e75859b casing operations for byte arrays
R=rsc
DELTA=186  (181 added, 0 deleted, 5 changed)
OCL=34203
CL=34203
2009-09-01 13:46:59 -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