1
0
mirror of https://github.com/golang/go synced 2024-11-19 07:54:43 -07:00
Commit Graph

346 Commits

Author SHA1 Message Date
Robert Griesemer
0416f994b7 - added convenience wrappers for sort
(work now with Ken's latest compiler fix)
- exoanded test cases accordingly
- fixed a type in the spec (thx r)

R=r
DELTA=65  (62 added, 2 deleted, 1 changed)
OCL=15050
CL=15050
2008-09-09 18:13:08 -07:00
Ken Thompson
d40f032d18 fixed bug in certain
evaluation of complex literals

R=r
OCL=15036
CL=15036
2008-09-09 15:47:31 -07:00
Russ Cox
376898ca8b go threads for OS X
R=r
OCL=14944
CL=15013
2008-09-09 11:50:14 -07:00
Rob Pike
24838a2df6 fix bug in stack limit calculation - was setting limit reg in wrong place.
R=ken
OCL=14981
CL=14981
2008-09-08 19:30:14 -07:00
Robert Griesemer
18852cf6d3 - added sort package and test case
R=r
OCL=14975
CL=14975
2008-09-08 18:43:42 -07:00
Russ Cox
c3ca056143 go linux x86-64 kernel fixes:
* change .gosymtab and .gopclntab to section 7 (note)
	* start INITTEXT at 4MB, not 4KB

R=r
OCL=14953
CL=14959
2008-09-08 15:22:55 -07:00
Ken Thompson
077fe40867 bug with struct literal with metods
R=r
OCL=14937
CL=14937
2008-09-08 13:10:11 -07:00
Ken Thompson
0194aaf918 T{} syntax for constructors
T(expression) for conversion
FUNC keyword no longer a type

R=r
OCL=14887
CL=14887
2008-09-05 19:50:34 -07:00
Rob Pike
e2e48e9a8e use a makefile to build math
fix a typo in syscall/Makefile

R=ken
OCL=14863
CL=14863
2008-09-05 09:55:33 -07:00
Ken Thompson
193eac7917 bugs 29, 61, 62, 74
fixedbugs 49 now (correctly) fails
bugs 32, 41, 68, 77 shouldnt be bugs

R=r
OCL=14842
CL=14842
2008-09-04 17:15:15 -07:00
Rob Pike
eab46c6ef4 include math in standard build
R=ken
OCL=14811
CL=14811
2008-09-04 13:09:49 -07:00
Ken Thompson
9dbaab54d1 rewriting bugs
R=r
OCL=14810
CL=14810
2008-09-04 12:21:10 -07:00
Rob Pike
4c9d84f06a Update fmt, refl, and rpc to exploit bug fixes in compiler
R=gri
OCL=14806
CL=14806
2008-09-04 10:39:04 -07:00
Rob Pike
6c72bfa55b fix bug in stack overflow check.
if stack is in low memory and frame size is huge, test could wrap around!
fix by omitting test altogether if we know frame is big.

R=gri
OCL=14782
CL=14782
2008-09-03 19:58:46 -07:00
Ken Thompson
182f91ffe0 map literals
R=r
OCL=14759
CL=14759
2008-09-03 14:40:22 -07:00
Ken Thompson
4539ced714 array literals
R=r
OCL=14756
CL=14756
2008-09-03 14:09:29 -07:00
Ken Thompson
1423bf3dc4 structure literals
R=r
OCL=14735
CL=14735
2008-09-02 19:11:25 -07:00
Ken Thompson
0ffacfd995 order of evaluation in function args
R=r
OCL=14733
CL=14733
2008-09-02 17:12:32 -07:00
Ken Thompson
9c5669bd0b bug in conv(string, bytearray)
R=r
OCL=14732
CL=14732
2008-09-02 16:21:30 -07:00
Rob Pike
b5eddae554 fix bug: was writing off end of array
R=gri
OCL=14728
CL=14728
2008-09-02 14:31:31 -07:00
Rob Pike
a0b2ccf9f4 vector cleanup:
- change Delete to Remove
- return deleted element in Remove
- remove range checking (runtime does this for you)

R=gri
OCL=14714
CL=14714
2008-09-02 13:16:43 -07:00
Ken Thompson
a7f1af81bd minor bugs
R=r
OCL=14702
CL=14702
2008-09-01 14:37:32 -07:00
Ken Thompson
33ee52727f fixed labels/break/continue/goto
R=r
OCL=14675
CL=14675
2008-08-29 20:30:19 -07:00
Ken Thompson
944ad62ecd fix type of (1<<x)
R=r
OCL=14656
CL=14656
2008-08-29 13:24:53 -07:00
Robert Griesemer
08c4380e48 - updated and cleaned up vector.go to use new array instructions
- added initial test cases (needs to be expanded)

R=r
DELTA=135  (84 added, 30 deleted, 21 changed)
OCL=14654
CL=14654
2008-08-29 11:10:23 -07:00
Ken Thompson
53010efe01 shift operations to new spec
R=r
OCL=14641
CL=14641
2008-08-28 19:59:42 -07:00
Ken Thompson
c6130e9f1f get rid of static/dynamic array distinction
R=r
OCL=14634
CL=14634
2008-08-28 15:17:37 -07:00
Ken Thompson
66a603c986 arrays
R=r
OCL=14603
CL=14603
2008-08-27 17:28:30 -07:00
Ken Thompson
30fd44cf9d fix fat copy of overlapping data
R=r
OCL=14417
CL=14417
2008-08-21 20:49:04 -07:00
Rob Pike
b59b551be7 allow predefined identifiers (len, etc.) to be exported.
(they were not accepted as names by the import parser)

R=ken
DELTA=3  (0 added, 0 deleted, 3 changed)
OCL=14159
CL=14159
2008-08-13 15:24:55 -07:00
Ken Thompson
52861558f4 put i2s, s2i and i2i in convert
R=r
OCL=14143
CL=14143
2008-08-12 19:13:09 -07:00
Rob Pike
0f1d439e82 update bugs
exploit the compiler now supporting i2s and i2i and clean up some code
fix up some panics and prints

R=gri
OCL=14141
CL=14141
2008-08-12 17:07:33 -07:00
Ken Thompson
ead7a6d47a i2s and i2i
R=r
OCL=14140
CL=14140
2008-08-12 16:36:18 -07:00
Ken Thompson
c1ab5a554f resolve go.y edits
R=r
OCL=14132
CL=14132
2008-08-12 14:28:58 -07:00
Ken Thompson
4797523572 fixed bugs in const/case
R=r
DELTA=138  (75 added, 12 deleted, 51 changed)
OCL=14129
CL=14131
2008-08-12 14:04:03 -07:00
Rob Pike
7293dab5a9 fix two print statements
R=gri
OCL=14105
CL=14105
2008-08-11 21:37:46 -07:00
Rob Pike
72d50900e3 fix a typo in the comments
R=ken
OCL=14104
CL=14104
2008-08-11 21:29:11 -07:00
Robert Griesemer
683ded80c9 - changed go-in-go parser to require ()'s for panic and print
- adjusted much of the existing go code
- missing: tests

R=r
DELTA=229  (1 added, 17 deleted, 211 changed)
OCL=14103
CL=14103
2008-08-11 21:20:42 -07:00
Ken Thompson
a8a9dbc9c6 print() and field names
R=r
DELTA=86  (61 added, 3 deleted, 22 changed)
OCL=14099
CL=14099
2008-08-11 19:17:28 -07:00
Rob Pike
968701beb1 - fix signedness bug in sys.Inf()
- add NaN, Inf printing to fmt
- fix a couple of bugs in fmt
- add a test for fmt

R=ken
OCL=14092
CL=14092
2008-08-11 15:04:54 -07:00
Ken Thompson
2679eefb31 floating <= and >= compare
R=r
DELTA=8  (0 added, 0 deleted, 8 changed)
OCL=14091
CL=14091
2008-08-11 13:53:50 -07:00
Ken Thompson
2b75556436 export large constants
R=r
DELTA=37  (31 added, 4 deleted, 2 changed)
OCL=14089
CL=14089
2008-08-11 13:22:04 -07:00
Ken Thompson
5649c23c8c fixed op=, ++ and -- on maps (bug060)
R=r
DELTA=22  (21 added, 0 deleted, 1 changed)
OCL=14049
CL=14049
2008-08-10 16:49:01 -07:00
Ken Thompson
258c817a1b allow name-type or pointer-to-named-type as method name (bug046)
R=r
DELTA=17  (11 added, 3 deleted, 3 changed)
OCL=14048
CL=14048
2008-08-10 15:09:09 -07:00
Ken Thompson
b89c538473 fixed unary ^ opcode (bug082)
R=r
DELTA=11  (10 added, 1 deleted, 0 changed)
OCL=14047
CL=14047
2008-08-10 14:35:02 -07:00
Ken Thompson
091047f36c adding and deleting files
R=r
DELTA=1685  (920 added, 765 deleted, 0 changed)
OCL=14030
CL=14030
2008-08-09 17:33:35 -07:00
Ken Thompson
272ae659db mp fixed arith
R=r
DELTA=149  (80 added, 62 deleted, 7 changed)
OCL=14029
CL=14029
2008-08-09 17:29:26 -07:00
Rob Pike
baf0747dd3 fix minor bug uncovered by new constant evaluator
R=gri
OCL=14025
CL=14025
2008-08-09 14:50:29 -07:00
Ken Thompson
67c4cc473c forgot a file
R=r
DELTA=427  (427 added, 0 deleted, 0 changed)
OCL=14017
CL=14017
2008-08-08 17:15:46 -07:00
Ken Thompson
9c2ade358d mp constants
R=r
DELTA=381  (142 added, 26 deleted, 213 changed)
OCL=14011
CL=14016
2008-08-08 17:13:31 -07:00
Russ Cox
907f38acfc Change generated acid to indent nested structures properly.
Before the change:

acid: M(m0)
	g0	00008dd0
	morearg	00000000
	cret	00000000
	curg	2aaaaaaab000
	lastg	00000000
Gobuf sched {
	SP	ffffe5e0
	PC	7fff00001ba1
}
	...
acid:

After the change:

acid: M(m0)
	g0	(G)00008dd0
	morearg	00000000
	cret	00000000
	curg	(G)2aaaaaaab000
	lastg	(G)00000000
	Gobuf sched {
		SP	ffffe5e0
		PC	00001ba1
	}
	...
acid:

R=ken
DELTA=27  (14 added, 2 deleted, 11 changed)
OCL=13802
CL=13998
2008-08-08 04:25:20 -07:00
Rob Pike
fa7d54ff2e include syscall in default build
fix an issue with autolib names by compiling to target location
print a bit more when compiling

R=gri
OCL=13988
CL=13988
2008-08-07 17:36:50 -07:00
Russ Cox
f7f6329e26 kill trailing white space.
(apparently my first attempt didn't work.)

R=r
OCL=13888
CL=13888
2008-08-05 14:21:42 -07:00
Russ Cox
96824000ed * comment, clean up scheduler
* rewrite lock implementation to be correct
  (tip: never assume that an algorithm you found
  in a linux man page is correct.)
* delete unneeded void* arg from clone fn
* replace Rendez with Note
* comment mal better
* use 6c -w, fix warnings
* mark all assembly functions 7

R=r
DELTA=828  (338 added, 221 deleted, 269 changed)
OCL=13884
CL=13886
2008-08-05 14:18:47 -07:00
Rob Pike
5adbacb8e7 allow pointers as keys in maps, treating them the same as ints - ptr eq not value equality
R=ken,gri
OCL=13879
CL=13879
2008-08-05 11:14:35 -07:00
Russ Cox
c8dee2770d acid. works only on Linux for now
R=r
DELTA=7031  (6906 added, 113 deleted, 12 changed)
OCL=13847
CL=13852
2008-08-04 17:24:25 -07:00
Robert Griesemer
2f4352a26d - switched most of existing Go code to new export syntax
- adjusted lang doc

R=r
DELTA=192  (26 added, 65 deleted, 101 changed)
OCL=13844
CL=13848
2008-08-04 17:17:59 -07:00
Russ Cox
d28acc42ec first cut at multithreading. works on Linux.
* kick off new os procs (machs) as needed
* add sys·sleep for testing
* add Lock, Rendez
* properly lock mal, sys·newproc, scheduler
* linux syscall arg #4 is in R10, not CX
* chans are not multithread-safe yet
* multithreading disabled by default;
  set $gomaxprocs=2 (or 1000) to turn it on

This should build on OS X but may not.
Rob and I will fix soon after submitting.

TBR=r
OCL=13784
CL=13842
2008-08-04 16:43:49 -07:00
Rob Pike
4f6ba4c8a5 use new export syntax to avoid repetition
R=gri
OCL=13819
CL=13819
2008-08-04 14:23:51 -07:00
Ken Thompson
695f83a9e0 export external functions
R=r
DELTA=16  (10 added, 4 deleted, 2 changed)
OCL=13815
CL=13815
2008-08-04 13:18:59 -07:00
Robert Griesemer
0cc772cbc0 - adjust Make.conf to use cc instead of cc64 for now
TBR=rsc
OCL=13804
CL=13804
2008-08-04 09:47:52 -07:00
Russ Cox
7b3771401c add nm
R=r
DELTA=339  (339 added, 0 deleted, 0 changed)
OCL=13786
CL=13794
2008-08-03 23:06:00 -07:00
Russ Cox
34514bdb72 Use a single Make.conf for setting CC, etc.
This makes it easy to build with other flags
(like -ggdb) or other compilers (like cc64).

R=r
DELTA=45  (6 added, 22 deleted, 17 changed)
OCL=13790
CL=13793
2008-08-03 23:03:31 -07:00
Ken Thompson
989676d2ba add 'export' adjectives to external
var, const and type declarations.

R=r
DELTA=49  (12 added, 28 deleted, 9 changed)
OCL=13791
CL=13791
2008-08-03 18:47:02 -07:00
Russ Cox
9aad9fef76 make 6a, 6c, 6g, 6l, libmach_amd64 build on 64-bit gcc.
these guys really really want long to be 32-bits,
so ,s/long/int32/ (and then manual fixup).
still passes all tests.

(i started out looking for just those longs that
needed to be int32 instead, and it was just too hard
to track them down one by one.)

the longs were rare enough that i don't think
it will cause integration problems.

R=ken
OCL=13787
CL=13789
2008-08-03 17:25:15 -07:00
Ken Thompson
851100683e 6c delete .6 file on error
R=r
DELTA=1  (1 added, 0 deleted, 0 changed)
OCL=13785
CL=13785
2008-08-03 13:31:06 -07:00
Russ Cox
873ba78b79 Remove doubled #else
R=r
DELTA=4  (2 added, 2 deleted, 0 changed)
OCL=13775
CL=13779
2008-08-03 00:34:05 -07:00
Russ Cox
4feda71b7d slightly gratuitous reorg of scheduler code
* rename select (very loaded word) nextgoroutine
	* separate out "enter scheduler" (sys·gosched)
	  from the scheduler itself (scheduler)

R=r
APPROVED=r
DELTA=36  (17 added, 15 deleted, 4 changed)
OCL=13772
CL=13774
2008-08-02 22:34:04 -07:00
Ken Thompson
7889e03477 go method
R=r
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=13765
CL=13765
2008-08-02 15:31:21 -07:00
Rob Pike
c557836c8e - mark syscall support routines as non-stack-generating
- add unlink, creat
- add constants for open
- fix some comments

R=gri
OCL=13654
CL=13656
2008-07-30 14:23:53 -07:00
Rob Pike
ebec99179f fix a comment
fix a register name

R=gri
OCL=13548
CL=13548
2008-07-29 15:17:27 -07:00
Rob Pike
e06d1540c8 fixes for linux system call linkage
R=gri
OCL=13547
CL=13547
2008-07-29 15:06:21 -07:00
Rob Pike
ebcd76d540 rewrite system call interface to use less assembler.
R=gri
OCL=13546
CL=13546
2008-07-29 14:44:48 -07:00
Rob Pike
f095e263c5 fix type error caused by recent change
R=gri
OCL=13545
CL=13545
2008-07-29 13:16:42 -07:00
Ken Thompson
b2d9020242 len now takes an expression
R=r
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=13523
CL=13523
2008-07-28 13:54:58 -07:00
Rob Pike
d302244c6c add lstat
clean up some code
fix comments
add paramter names to interface

R=ken
OCL=13521
CL=13521
2008-07-28 13:07:58 -07:00
Rob Pike
3835e01d97 print tracebacks for all goroutines, not just the crashing one
R=ken
OCL=13518
CL=13518
2008-07-28 11:29:41 -07:00
Ken Thompson
b1abcc195d random bug fixes
R=r
DELTA=18  (6 added, 1 deleted, 11 changed)
OCL=13504
CL=13504
2008-07-27 13:09:15 -07:00
Ken Thompson
bd397d2f9b select
R=r
DELTA=29  (27 added, 1 deleted, 1 changed)
OCL=13503
CL=13503
2008-07-27 11:42:52 -07:00
Rob Pike
eccea1980d add fstat, stat
R=ken
OCL=13497
CL=13497
2008-07-26 16:22:14 -07:00
Rob Pike
20a02661d9 beginnings of a low-level syscall library
R=ken
OCL=13483
CL=13496
2008-07-26 14:49:21 -07:00
Ken Thompson
120827284e select/chan
R=r
DELTA=517  (137 added, 98 deleted, 282 changed)
OCL=13495
CL=13495
2008-07-26 14:21:21 -07:00
Ken Thompson
949ab5c7ff select
R=r
APPROVED=r
DELTA=41  (24 added, 13 deleted, 4 changed)
OCL=13480
CL=13480
2008-07-25 17:03:27 -07:00
Ken Thompson
e963cba8a1 select
R=r
APPROVED=r
DELTA=147  (94 added, 14 deleted, 39 changed)
OCL=13477
CL=13477
2008-07-25 15:55:12 -07:00
Ken Thompson
ece3e57c85 read select
R=r
APPROVED=r
DELTA=120  (108 added, 0 deleted, 12 changed)
OCL=13468
CL=13468
2008-07-25 11:58:26 -07:00
Rob Pike
b4902c5f40 fix ordering problem: flag depends on fmt
R=gri
OCL=13442
CL=13442
2008-07-24 17:01:09 -07:00
Ken Thompson
cb9b1038db select
R=r
APPROVED=r
DELTA=638  (433 added, 21 deleted, 184 changed)
OCL=13426
CL=13438
2008-07-24 15:57:30 -07:00
Rob Pike
7693409677 add usage message
R=gri
OCL=13423
CL=13423
2008-07-24 10:38:22 -07:00
Rob Pike
ac0dd5ae52 Add a flags package.
R=gri
OCL=13399
CL=13399
2008-07-23 20:02:54 -07:00
Rob Pike
35b7a174e6 maintain __.PKGDEF files in archives if the 'g' flag is given
use this facility to simplify the math lib-building script

R=ken
DELTA=183  (158 added, 16 deleted, 9 changed)
OCL=13364
CL=13366
2008-07-22 15:57:46 -07:00
Rob Pike
05caa7f820 help management of empty pkg and lib directories in perforce
R=gri
DELTA=4  (4 added, 0 deleted, 0 changed)
OCL=13328
CL=13328
2008-07-21 17:10:49 -07:00
Ken Thompson
b78676a49d start of select
random bugs fixed

SVN=128149
2008-07-20 20:13:07 -07:00
Ken Thompson
963753d3f9 tweaks to init
rand using init

SVN=128142
2008-07-20 13:33:45 -07:00
Ken Thompson
f24f8ffae0 init
SVN=128128
2008-07-19 18:39:12 -07:00
Rob Pike
acf3d59847 update fmt to use some initialization
tweak ar so the pkgdef file doesn't cause it not to generate a symbol table

SVN=128119
2008-07-19 14:52:01 -07:00
Ken Thompson
c92aff2de7 init
SVN=128118
2008-07-19 14:37:02 -07:00
Ken Thompson
90da636c15 init filename vs pkgname
SVN=128117
2008-07-19 14:20:46 -07:00
Ken Thompson
fb3af53f4e initialization
SVN=128115
2008-07-19 13:38:29 -07:00
Ken Thompson
4c5a165873 len(fixed array)
SVN=128050
2008-07-18 11:59:35 -07:00
Ken Thompson
0ca551fc36 loop in subtype
SVN=127933
2008-07-17 18:15:05 -07:00