summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-03-30Separate the alignment of a field from the alignment of theIan Lance Taylor1-38/+111
type of the field. Use the field alignment to compute the size of a structure. This may help 8g but is mainly for gccgo. gccgo maintains the standard C/C++ ABI for structure field alignment. For the i386, this requires that a float64 field in a struct be aligned on a 32-bit boundary, although for efficiency a variable of type float64 or []float64 should be aligned on a 64-bit boundary. I also removed the unused size field from structField. R=r DELTA=117 (75 added, 2 deleted, 40 changed) OCL=26842 CL=26936
2009-03-30fix http://b/1748082Russ Cox2-1/+8
package main var f = func(a, b int) int { return a + b } R=ken OCL=26935 CL=26935
2009-03-30fix build (moved decl to go.h earlierRuss Cox1-1/+0
and changed vlong to int64). R=ken OCL=26934 CL=26934
2009-03-30move portable object routines (especiallyRuss Cox10-808/+858
signature generation) into gc. R=ken OCL=26933 CL=26933
2009-03-30closure bug: carry along outnamed flag.Russ Cox1-0/+1
R=ken OCL=26930 CL=26930
2009-03-30move portable code generation (basic statements) to gc.Russ Cox9-601/+658
R=ken OCL=26929 CL=26929
2009-03-30log.Stderr should actually go to stderr.David Symonds1-1/+1
R=r APPROVED=r DELTA=1 (0 added, 0 deleted, 1 changed) OCL=26926 CL=26928
2009-03-30move some portable pieces of 6g/gsubr.c into gc/subr.cRuss Cox4-275/+272
int brcom(int); int brrev(int); void setmaxarg(Type*); Sig* lsort(Sig*, int(*)(Sig*, Sig*)); int dotoffset(Node*, int*, Node**); void stringpool(Node*); void tempname(Node*, Type*); R=ken OCL=26922 CL=26922
2009-03-30delete dregs: inarggen, genpanic, regretRuss Cox4-47/+0
R=ken OCL=26916 CL=26918
2009-03-30daily snapshot:Robert Griesemer5-73/+1660
- separating printing of AST and documentation - astprinter: will subsume ast printing functionality of printer - docprinter: will subsume doc printing functionality of printer also: more logic to collect all the documentation pertaining to all files of a package - parser: some cleanups, stricter syntax checks - gds: hooks to test new doc printer (disabled) R=r OCL=26915 CL=26915
2009-03-30move alignment calculations into gcRuss Cox7-391/+410
R=ken OCL=26914 CL=26914
2009-03-30don't crash onRuss Cox1-0/+1
unsafe.Alignof(struct{x float}{0}.x) R=ken OCL=26911 CL=26913
2009-03-30move bits.c from 6g to gcRuss Cox6-40/+63
R=ken OCL=26909 CL=26909
2009-03-30fix last 3 references to 'type guards'Rob Pike1-3/+3
R=gri DELTA=3 (0 added, 0 deleted, 3 changed) OCL=26908 CL=26908
2009-03-30tests changed - throw calls panic directly nowRuss Cox1-21/+7
instead of dereferencing nil, so no more SIGSEGVs. R=r DELTA=28 (0 added, 14 deleted, 14 changed) OCL=26881 CL=26881
2009-03-30new tool godefs.Russ Cox7-2/+1078
uses gcc to determine system header layouts and emits simple C or Go. see comment in main.c. R=r DELTA=1069 (1067 added, 0 deleted, 2 changed) OCL=26682 CL=26880
2009-03-30don't write cmp's output to the c file.Russ Cox1-3/+3
cope better with p4 not found. R=r DELTA=3 (0 added, 0 deleted, 3 changed) OCL=26877 CL=26879
2009-03-30more 386 runtime - can run tiny c programs.Russ Cox25-92/+1720
R=r DELTA=1926 (1727 added, 168 deleted, 31 changed) OCL=26876 CL=26878
2009-03-27- receiver syntax verificationRobert Griesemer1-25/+55
- removed left-over panic() call - fixed a couple of bugs R=r OCL=26856 CL=26856
2009-03-27Significant parser cleanup:Robert Griesemer3-409/+490
- commented public interface - much better and very precise error messages - much better tracing output - many more checks (still permits more than just syntactically legal programs, but much more is checked that can be checked w/o semantic information) - updated with respect to updated AST - general cleanup throughout Parser almost ready for move into lib/go. R=r OCL=26853 CL=26855
2009-03-27- have explicit KeyValueExpr node instead of BinaryExpr ':' (as discussed)Robert Griesemer2-12/+17
- remove ':' token from operator precedence levels R=rsc DELTA=25 (13 added, 8 deleted, 4 changed) OCL=26850 CL=26854
2009-03-27Verify that "byte" is an alias for "uint8".Ian Lance Taylor1-0/+6
R=r DELTA=6 (6 added, 0 deleted, 0 changed) OCL=26836 CL=26841
2009-03-27- minor tweak to composite literal production:Robert Griesemer1-5/+7
renamed PairExpr -> KeyValueExpr and PairExprList -> KeyValueList (to match corresponding nodes in AST per rsc' suggestion) - added a couple of TODOs R=r,rsc DELTA=10 (2 added, 0 deleted, 8 changed) OCL=26837 CL=26840
2009-03-27integrate feedback from rscRobert Griesemer1-2/+2
R=rsc DELTA=2 (0 added, 0 deleted, 2 changed) OCL=26810 CL=26834
2009-03-26Add a few tests which weren't being run.Ian Lance Taylor2-0/+4
R=r DELTA=4 (4 added, 0 deleted, 0 changed) OCL=26797 CL=26814
2009-03-26- adjustments to match slightly changed scanner interfaceRobert Griesemer2-686/+689
- more comments on parser, various cleanups TBR=r OCL=26813 CL=26813
2009-03-26minor tweaks:Robert Griesemer2-15/+40
- permit scanner to run w/o error handler - provide an error counter R=iant DELTA=43 (25 added, 0 deleted, 18 changed) OCL=26804 CL=26812
2009-03-26rename redefined symbolsRob Pike1-4/+4
R=iant DELTA=4 (0 added, 0 deleted, 4 changed) OCL=26802 CL=26811
2009-03-26move AST into src/lib/goRobert Griesemer2-2/+7
R=r DELTA=1509 (756 added, 751 deleted, 2 changed) OCL=26799 CL=26801
2009-03-26fix scanner initialization, add testRobert Griesemer2-2/+27
R=r DELTA=27 (25 added, 0 deleted, 2 changed) OCL=26798 CL=26798
2009-03-26- adjustments to match new token/scanner/astRobert Griesemer5-243/+278
R=r OCL=26794 CL=26794
2009-03-26- renamed scanner.Location to token.PositionRobert Griesemer4-203/+176
- by moving Position into token, scanner dependencies are removed from several files - clearer field names in token.Position, now possible to have a Pos() accessor w/o naming conflicts - added Pos() accessor - use anonymous token.Position field in AST nodes R=r DELTA=244 (28 added, 55 deleted, 161 changed) OCL=26786 CL=26793
2009-03-26EncodeRuneToStringRobert Griesemer2-0/+22
R=rsc DELTA=22 (22 added, 0 deleted, 0 changed) OCL=26779 CL=26792
2009-03-26- introduce explicit Token typeRobert Griesemer6-50/+53
- convert some functions into methods - corresponding changes in pretty R=r DELTA=57 (3 added, 0 deleted, 54 changed) OCL=26764 CL=26777
2009-03-25This is really two changes in one but given interdependenciesKai Backman25-355/+476
and expected review latency I needed to combine the CLs. 1. Made the 5* toolpath build using the go build system. Hooked the subdirectories to clean.bash but added a separate make5.bash for now. Minor massage to make the code more similar to the current structure of 6c/6a/6l. 2. Change all references from long to int32 in line with similar change for the other toolchains. The end result is that 5c, 5a and 5l can now be compiled and the executables start up properly. Haven't thrown any input at them yet. R=rsc APPROVED=rsc DELTA=1052 (392 added, 328 deleted, 332 changed) OCL=26757 CL=26761
2009-03-25use FunctionType in FunctionLit productionRobert Griesemer1-1/+1
R=r DELTA=1 (0 added, 0 deleted, 1 changed) OCL=26738 CL=26753
2009-03-25adjustments matching updated astRobert Griesemer2-287/+338
R=r OCL=26746 CL=26746
2009-03-25AST for Go programsRobert Griesemer1-220/+236
R=rsc,r DELTA=309 (67 added, 51 deleted, 191 changed) OCL=26611 CL=26745
2009-03-24add some words (written by rsc) about the state of typed constants.Rob Pike1-0/+31
DELTA=31 (31 added, 0 deleted, 0 changed) OCL=26709 CL=26716
2009-03-24add .8 support to libmach_amd64 [sic].Russ Cox7-82/+446
add code to handle 32-bit Mach-O and ELF binaries. R=r DELTA=452 (365 added, 29 deleted, 58 changed) OCL=26696 CL=26712
2009-03-24make 8a, 8c build again.Russ Cox3-8/+27
add 8a 8c 8l to the build to keep us honest. R=r DELTA=33 (28 added, 0 deleted, 5 changed) OCL=26694 CL=26711
2009-03-24drop rt0 object from 8l (already dropped from 6l).Russ Cox1-8/+0
remove debugging print. R=r DELTA=8 (0 added, 8 deleted, 0 changed) OCL=26695 CL=26710
2009-03-24change notation: s/Stat/Stmt/ in grammatical productionsRob Pike1-25/+25
DELTA=26 (0 added, 0 deleted, 26 changed) OCL=26703 CL=26705
2009-03-24delete incorrect, dreg example of select on typeRob Pike1-19/+36
R=gri,rsc DELTA=48 (28 added, 11 deleted, 9 changed) OCL=26630 CL=26701
2009-03-24goldenKen Thompson1-4/+0
R=r OCL=26699 CL=26699
2009-03-24^ type(const) now inverts "enough" bitsKen Thompson3-3/+31
^ signed(const) becomes illegal ^ unsigned(const) becomes legal R=r OCL=26697 CL=26697
2009-03-24fix build:Russ Cox4-5/+7
install runtime lib in correct location. fix one bad type definition in defs.h. clear out $GOROOT/lib in clean.bash. TBR=r OCL=26691 CL=26691
2009-03-24split heapmap, which is specific to 64-bit pointer addresses,Russ Cox4-201/+214
out of malloc proper. TBR=r OCL=26689 CL=26689
2009-03-24convert Linux to auto-generated defs.hRuss Cox7-189/+292
TBR=r OCL=26686 CL=26688
2009-03-24convert darwin to use godefs-generated defs.h.Russ Cox6-429/+490
this change is much smaller if you ignore the machine-generated defs.h. TBR=r OCL=26684 CL=26684