1
0
mirror of https://github.com/golang/go synced 2024-11-25 10:27:57 -07:00
Commit Graph

3300 Commits

Author SHA1 Message Date
Robert Griesemer
5a40a682e3 simplified heuristic for associating const/var decls with types
(per suggestion from rsc)

R=rsc
DELTA=24  (3 added, 9 deleted, 12 changed)
OCL=34121
CL=34130
2009-08-31 13:13:04 -07:00
Rob Pike
149e3d332c rearrange some constants. unicode package now defines MaxRune and ReplacementChar.
utf8 package imports unicode to get those definitions.
regenerate dependencies.

R=rsc
DELTA=41  (19 added, 3 deleted, 19 changed)
OCL=34123
CL=34129
2009-08-31 13:01:25 -07:00
Russ Cox
4962e7ee9b use correct pc for printing fn+%#x in tracebacks
R=austin
DELTA=12  (2 added, 0 deleted, 10 changed)
OCL=34098
CL=34120
2009-08-31 10:55:24 -07:00
Robert Griesemer
3dc7b382f9 associate const and var declarations with a type where possible
R=rsc
DELTA=105  (87 added, 7 deleted, 11 changed)
OCL=34062
CL=34119
2009-08-31 10:47:34 -07:00
Rob Pike
c62b9d8f2a can't encode array or slice - catch in sendType rather than failing in Encode
R=rsc
DELTA=38  (33 added, 3 deleted, 2 changed)
OCL=34101
CL=34104
2009-08-30 19:46:35 -07:00
Russ Cox
fda0e78b23 fix line numbers, again.
if first function in file was dead code, it was being
discarded along with the file name information for that file.
leave the functions in the master function list longer:
let xfol take the dead code out of the code list,
and let span skip the unreachable functions during output.

before
	throw: sys·mapaccess1: key not in map

	panic PC=0x2e7b20
	throw+0x33 /Users/rsc/go/src/pkg/runtime/runtime.c:65
		throw(0x5834f, 0x0)
	sys·mapaccess1+0x73 /Users/rsc/go/src/pkg/runtime/hashmap.c:769
		sys·mapaccess1(0x2b9bd0, 0x0)
	gob·*Encoder·Encode+0x16b /Users/rsc/go/src/pkg/fmt/print.go:2926
		gob·*Encoder·Encode(0x2bb440, 0x0, 0x558b0, 0x0, 0x2e4be0, ...)
	main·walk+0x331 :1603
		main·walk(0x33a480, 0x0)
	main·walk+0x271 :1596
		main·walk(0x300640, 0x0)
	main·walk+0x271 :1596
		main·walk(0x300520, 0x0)
	main·walk+0x271 :1596
		main·walk(0x300240, 0x0)
	main·walk+0x271 :1596
		main·walk(0x678f8, 0x0)
	main·main+0x22 :1610
		main·main()

after
	throw: sys·mapaccess1: key not in map

	panic PC=0x2e7b20
	throw+0x33 /Users/rsc/go/src/pkg/runtime/runtime.c:65
		throw(0x5834f, 0x0)
	sys·mapaccess1+0x73 /Users/rsc/go/src/pkg/runtime/hashmap.c:769
		sys·mapaccess1(0x2b9bd0, 0x0)
	gob·*Encoder·Encode+0x16b /Users/rsc/go/src/pkg/gob/encoder.go:319
		gob·*Encoder·Encode(0x2bb3c0, 0x0, 0x558b0, 0x0, 0x2e4be0, ...)
	main·walk+0x331 /Users/rsc/dir.go:121
		main·walk(0x2f6ab0, 0x0)
	main·walk+0x271 /Users/rsc/dir.go:114
		main·walk(0x301640, 0x0)
	main·walk+0x271 /Users/rsc/dir.go:114
		main·walk(0x301520, 0x0)
	main·walk+0x271 /Users/rsc/dir.go:114
		main·walk(0x301240, 0x0)
	main·walk+0x271 /Users/rsc/dir.go:114
		main·walk(0x678f8, 0x0)
	main·main+0x22 /Users/rsc/dir.go:128
		main·main()
	mainstart+0xe /Users/rsc/go/src/pkg/runtime/amd64/asm.s:55
		mainstart()
	goexit /Users/rsc/go/src/pkg/runtime/proc.c:133
		goexit()

R=r
DELTA=46  (20 added, 25 deleted, 1 changed)
OCL=34094
CL=34103
2009-08-30 19:21:48 -07:00
Russ Cox
9449e3b02c list untested packages instead of tested
R=r
DELTA=68  (12 added, 55 deleted, 1 changed)
OCL=34095
CL=34102
2009-08-30 19:21:32 -07:00
Russ Cox
6e8524be18 array index bug
x[i]
x not addressable, i >= UINF
double evaluated i
second eval killed live registers

manifested as gob instability

R=ken
OCL=34097
CL=34099
2009-08-30 18:47:48 -07:00
Rob Pike
427a0adb39 further simplification of the case fold calculation.
hard to beat at this point, i think.

R=rsc
DELTA=38  (8 added, 21 deleted, 9 changed)
OCL=34092
CL=34096
2009-08-30 18:17:52 -07:00
Ken Thompson
6fceadbba3 cleanup getting ready for static init
R=rsc
OCL=34090
CL=34090
2009-08-30 14:43:33 -07:00
Rob Pike
3c098e2789 add the Upper/Lower sequence optimization.
tables shrink 900 lines.
mapping code gets a little slower

R=rsc
DELTA=1124  (105 added, 952 deleted, 67 changed)
OCL=34079
CL=34089
2009-08-30 14:02:42 -07:00
Ken Thompson
be219c5e9b removed debug print
R=r
OCL=34087
CL=34087
2009-08-30 11:36:42 -07:00
David Symonds
792eba220e Fix .alternates execution: it was skipping every second token.
R=r
APPROVED=r
DELTA=13  (11 added, 0 deleted, 2 changed)
OCL=34081
CL=34081
2009-08-29 21:13:32 -07:00
Ken Thompson
bc15b94181 sped up optimization by not optimizing
very large functions.

R=r
OCL=34080
CL=34080
2009-08-29 20:33:21 -07:00
Rob Pike
22c2b476a8 first cut at case mapping tables and library.
next cut will do the optimization for alternating sequences.

R=rsc
DELTA=1658  (1620 added, 9 deleted, 29 changed)
OCL=34072
CL=34075
2009-08-28 23:05:16 -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
Ken Thompson
e667e8a4f7 arraytoslice and some cleanup
R=rsc
OCL=34058
CL=34058
2009-08-28 15:44:24 -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
Ken Thompson
3983171b08 sliceslice bug
R=rsc
OCL=34050
CL=34050
2009-08-28 13:45:48 -07:00
Ken Thompson
47c568880d bug in sliceslice
R=rsc
OCL=34047
CL=34047
2009-08-28 13:32:09 -07:00
Rob Pike
c6540d31f6 print the value using (in effect) %v when Printf is given mismatched args for its format
Printf("%s", 2) gives %s(int=2)

R=rsc
DELTA=12  (10 added, 0 deleted, 2 changed)
OCL=34042
CL=34044
2009-08-28 13:02:34 -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
Ken Thompson
bf0130cc0f sliceslice inline
R=rsc
OCL=34041
CL=34041
2009-08-28 12:37:39 -07:00
Rob Pike
f59ae064ba fix ", First" ", Last" ranges from UnicodeData.txt
R=rsc
DELTA=54  (38 added, 2 deleted, 14 changed)
OCL=34032
CL=34040
2009-08-28 11:57:38 -07:00
Ian Lance Taylor
221d0567e3 Run the tests for the testing package. Fix them so that they
work.

R=rsc
DELTA=16  (1 added, 1 deleted, 14 changed)
OCL=34012
CL=34038
2009-08-28 11:44:46 -07:00
Robert Griesemer
b291fc31fc - don't associate factory methods to basic types (which have no explicit declarations)
- be more robust in the presence of absent type declarations

R=rsc
DELTA=81  (63 added, 14 deleted, 4 changed)
OCL=34033
CL=34036
2009-08-28 11:39:25 -07:00
Robert Griesemer
a7dc9dbd20 - exponentially back off auto-sync'ing instead disabling it in case of failure
R=rsc
DELTA=48  (35 added, 3 deleted, 10 changed)
OCL=34030
CL=34034
2009-08-28 11:28:05 -07:00
Austin Clements
9d517ba3fd Implement runtime errors, divide-by-zero checking, nil pointer
checking, bounds checking, and map key checking.

R=rsc
APPROVED=rsc
DELTA=202  (108 added, 72 deleted, 22 changed)
OCL=33981
CL=34031
2009-08-28 10:39:57 -07:00
Robert Griesemer
636cdc7622 - collect consts and vars in one list
- handle absence of forward-decls correctly
  (cannot assume a type was declared before it was used)

R=rsc
DELTA=112  (32 added, 38 deleted, 42 changed)
OCL=34008
CL=34027
2009-08-28 09:11:01 -07:00
Kai Backman
ee31157e16 64 bit lsh, sub, and/or/eor. some placeholder files in syscall and os.
R=rsc
APPROVED=rsc
DELTA=204  (139 added, 0 deleted, 65 changed)
OCL=34009
CL=34025
2009-08-28 07:23:24 -07:00
David Symonds
646a27bd27 Build fix: fix typo in sort pkg.
APPROVED=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=34016
CL=34022
2009-08-28 02:27:32 -07:00
Rob Pike
25caf18a8e improve generated code for godocability
R=rsc
DELTA=459  (168 added, 279 deleted, 12 changed)
OCL=34005
CL=34007
2009-08-27 18:38:02 -07:00
Russ Cox
f7e92c596c os.File.ReadAt/WriteAt
R=r
DELTA=84  (81 added, 0 deleted, 3 changed)
OCL=34006
CL=34006
2009-08-27 18:36:45 -07:00
Rob Pike
185ae4f99e add Sort methods for convenience types
R=gri
DELTA=9  (9 added, 0 deleted, 0 changed)
OCL=34000
CL=34003
2009-08-27 18:23:45 -07:00
Rob Pike
8b6274eb9f add scripts tables to the unicode package
R=rsc
DELTA=1479  (1422 added, 1 deleted, 56 changed)
OCL=33993
CL=33997
2009-08-27 17:04:23 -07:00
Robert Griesemer
4ed666e228 doc fixes (no lang changes)
- added missing predeclared identifiers
- html-escaping of a few <<'s and >>'s
- added a few links (and removed the §'s)

R=r
DELTA=30  (0 added, 0 deleted, 30 changed)
OCL=33985
CL=33995
2009-08-27 16:45:42 -07:00
Robert Griesemer
1f95f0d353 tweaks
R=r
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=33994
CL=33994
2009-08-27 16:44:17 -07:00
Ken Thompson
c19c933f5a bug in arrayslice
R=rsc
OCL=33987
CL=33987
2009-08-27 14:59:26 -07:00
Robert Griesemer
9ecd30a286 - modified type switches (replacement for CL 32659)
- takes into account new scoping rules

DELTA=52  (21 added, 7 deleted, 24 changed)
OCL=33967
CL=33982
2009-08-27 14:22:51 -07:00
Ken Thompson
9bf597a210 inline slicearray
R=rsc
OCL=33974
CL=33974
2009-08-27 13:19:44 -07:00
Austin Clements
e653280cad Utilities to bridge native types and functions into
interpreter values.  Also, print nil values properly.

R=rsc
APPROVED=rsc
DELTA=173  (173 added, 0 deleted, 0 changed)
OCL=33837
CL=33973
2009-08-27 13:11:06 -07:00
Robert Griesemer
f96099dbac Cleanups:
- remove visitor pattern interface (not used)
- added non-exported "branding" methods to enforce
  node hierarchy

R=rsc
DELTA=174  (13 added, 92 deleted, 69 changed)
OCL=33838
CL=33963
2009-08-27 11:25:16 -07:00
Austin Clements
ea62b3441f Debugger architecture interface and definitions for AMD64.
R=rsc
APPROVED=rsc
DELTA=114  (114 added, 0 deleted, 0 changed)
OCL=33957
CL=33962
2009-08-27 11:24:13 -07:00
Austin Clements
c0dd9f526b Make the statement compiler not use the AST visitor.
In the process, I made error handling in the statement
compiler much saner.  Instead of separately tracking various
error flags with weird relations, I just track if any error
messages have been produced.

R=rsc
APPROVED=rsc
DELTA=308  (98 added, 135 deleted, 75 changed)
OCL=33870
CL=33961
2009-08-27 11:21:52 -07:00
Russ Cox
4b409289f6 remove Line in bufio.ReadLine(Bytes|Slice|String)
also drop bool arg from ReadString

R=r
DELTA=45  (13 added, 1 deleted, 31 changed)
OCL=33923
CL=33960
2009-08-27 11:20:15 -07:00
Russ Cox
bdcf1f8125 add and use Make.cmd
R=r
DELTA=63  (23 added, 31 deleted, 9 changed)
OCL=33932
CL=33959
2009-08-27 11:17:14 -07:00
Russ Cox
3443656bce clean up ideal handling; reject attempts
to write type descriptors for ideal types

R=ken
OCL=33958
CL=33958
2009-08-27 11:16:34 -07:00