1
0
mirror of https://github.com/golang/go synced 2024-11-20 11:24:47 -07:00
Commit Graph

2849 Commits

Author SHA1 Message Date
Rob Pike
56cba8855e panic can't print interfaces well so use err.String()
R=rsc
http://go/go-review/1016041
2009-11-04 15:13:16 -08:00
Robert Griesemer
2f792d32be - always format blocks with closing } on a new line, even if empty
- at the moment this also affects single-line function declarations
  because we have disabled them at the moment (but not single-line
  function literals)

R=rsc
http://go/go-review/1016040
2009-11-04 13:31:20 -08:00
Rob Pike
98ac4c6e65 stylistic issues in a couple of cmd docs
R=rsc
http://go/go-review/1017028
2009-11-04 13:13:17 -08:00
Rob Pike
0d3dd3c950 document godoc and gofmt
R=rsc
http://go/go-review/1018036
2009-11-04 11:33:43 -08:00
Robert Griesemer
4bb0271a12 remove reference to /home/r
R=rsc
http://go/go-review/1018039
2009-11-04 11:15:19 -08:00
Robert Griesemer
6dbf7aa129 - complete html-escaping also in printer.go
R=rsc
http://go/go-review/1017027
2009-11-04 10:59:25 -08:00
Robert Griesemer
c8c3f1d5de - respect source line breaks in grouped declarations
- made ast.Spec nodes implement Node interface
- added extra test cases

R=rsc
http://go/go-review/1016038
2009-11-04 10:58:54 -08:00
Robert Griesemer
524ade9a58 fix bufio test case
R=rsc
http://go/go-review/1018038
2009-11-04 10:58:30 -08:00
Russ Cox
d441d545a9 two more regexp tweaks
TBR=r
http://go/go-review/1016037
2009-11-04 08:34:31 -08:00
Russ Cox
af2bc8f986 allow "no such host" and also "no answer from server";
seems to help on snow leopard.

TBR=r
http://go/go-review/1018035
2009-11-04 08:30:53 -08:00
Rob Pike
56a38f25a7 document gotest
R=rsc
CC=go-dev
http://go/go-review/1017026
2009-11-03 23:06:16 -08:00
Robert Griesemer
467c726eec add " and ' to list of html-escaped chars
R=rsc
http://go/go-review/1017025
2009-11-03 22:52:10 -08:00
Rob Pike
796e29ebfc add goyacc to the build
R=rsc
CC=go-dev
http://go/go-review/1018034
2009-11-03 22:48:48 -08:00
Rob Pike
472576c615 make goyacc and units.y work again (minor tweaks).
document goyacc a little.

R=rsc
CC=go-dev
http://go/go-review/1017024
2009-11-03 22:38:43 -08:00
Rob Pike
701440043b document gopack.
change string in usage message.

R=rsc
http://go/go-review/1017023
2009-11-03 22:36:31 -08:00
Rob Pike
c6dd8c18f0 document ebnflint
R=gri
http://go/go-review/1016034
2009-11-03 22:19:56 -08:00
Rob Pike
3fa379e797 document the gc go compilers.
fix the usage message.

R=rsc
CC=go-dev
http://go/go-review/1016033
2009-11-03 22:00:36 -08:00
Robert Griesemer
4818d346b6 support for command documentation:
- made package tree handler generic so it can work on any fs tree
- cleanups along the way

R=rsc
CC=r
http://go/go-review/1017020
2009-11-03 19:40:26 -08:00
Rob Pike
dc62c66c73 more command documentation, including nm and prof
R=rsc
http://go/go-review/1017022
2009-11-03 17:46:35 -08:00
Adam Langley
93253a870c encoding/*: reverse the order of src, dst so that dst is first.
R=rsc
CC=go-dev
http://go/go-review/1017021
2009-11-03 17:32:08 -08:00
Adam Langley
1542520a4a crypto/tls (part 2)
R=rsc
CC=go-dev
http://go/go-review/1018028
2009-11-03 17:25:13 -08:00
Adam Langley
bcce2987e0 crypto/rsa: fix blinding when using a null random source.
For testing it can be useful to use a null random source (one which
always returns zero) to remove non-determinism from the tests.
However, when performing RSA blinding, the random blind ends up being
zero and it's hard to reverse a multiplication by zero.

R=rsc
CC=go-dev
http://go/go-review/1018033
2009-11-03 17:23:50 -08:00
Rob Pike
b5ab5d4f12 document the assemblers.
add details about -d and -e flags in the loaders.

R=rsc
CC=go-dev
http://go/go-review/1018031
2009-11-03 16:29:32 -08:00
Rob Pike
2bc63f2367 First steps at command documentation: C compilers and linkers.
Each command gets a doc.go file for godoc to analyze. Its main
element is a package comment.

R=rsc
CC=go-dev
http://go/go-review/1018029
2009-11-03 16:05:47 -08:00
Russ Cox
96ea081c04 6l -e: emit external ELF symbol table.
enough to make nm and oprofile work.

R=r
http://go/go-review/1017016
2009-11-03 14:20:37 -08:00
Robert Griesemer
c56b366c28 Note: This is an exact replica and replacement of CL 1018027
(which I uploaded at home and thus can't upload from here).
CL 1018027 was reviewed.

- added comments to scope.go
- commented out some code that is not yet needed
  (and which showed up prominently in the documentation)

R=rsc
http://go/go-review/1017017
2009-11-03 14:05:18 -08:00
Robert Griesemer
38512d090c - don't loose extra line breaks in struct/interface declarations
- start new sections if a field/method declaration spans multiple lines;
  this avoids tabs from the previous line affecting the next field/method

R=rsc
http://go/go-review/1017015
2009-11-03 13:40:11 -08:00
Adam Langley
4f2ec03416 Add testing/script.
R=rsc, r
CC=go-dev
http://go/go-review/1016001
2009-11-03 12:47:06 -08:00
Robert Griesemer
12f8660d4c use default styler when there is no other given
(No visual change yet since the comments for
exported code snippets - as shown on the pkg
page - are not yet formatted using the standard
comment intersperse mechanism in the printer.
This is a TODO in the printer.)

R=rsc
http://go/go-review/1016031
2009-11-03 10:00:57 -08:00
Rob Pike
929e27e3d5 fix build
R=gri
http://go/go-review/1017014
2009-11-02 23:06:48 -08:00
Robert Griesemer
be56b95770 - show recursive package directory structure in package pages
- removed some underbars in section headings for better looks
- various minor tweaks

R=rsc
http://go/go-review/1018026
2009-11-02 22:44:01 -08:00
Robert Griesemer
6e98b7f0b2 split printer.go into two files; it has become too large:
- nodes.go implements ast node formatting
- printer.go implements the core printing functionality
  and public interface

No code changes except for updating the import clauses
and adding a top-level comment to nodes.go.

R=rsc
http://go/go-review/1016026
2009-11-02 20:55:40 -08:00
Rob Pike
120d0b50c6 forgot to count newlines when scanning white space.
also fix a error-printing bug in godoc.

R=gri
http://go/go-review/1016030
2009-11-02 20:35:52 -08:00
Russ Cox
c83b838641 package net cleanup
added ReadFrom/WriteTo for packet protocols like UDP.
simplified the net.Conn interface.
added new net.PacketConn interface for packet protocols.
implemented proper UDP listener.

cleaned up LocalAddr/RemoteAddr methods - cache in netFD.

threw away various unused methods.

an interface change:
introduced net.Addr as a network address interface,
to avoid conversion of UDP host:port to string and
back for every ReadFrom/WriteTo sequence.

another interface change:
since signature of Listener.Accept was changing anyway,
dropped the middle return value, because it is available
as c.RemoteAddr().  (the Accept signature predates the
existence of that method.)

Dial and Listen still accept strings, but the proto-specific
versions DialTCP, ListenUDP, etc. take net.Addr instead.

because the generic Dial didn't change and because
no one calls Accept directly (only indirectly via the http
server), very little code will be affected by these interface
changes.

design comments welcome.

R=p
CC=go-dev, r
http://go/go-review/1018017
2009-11-02 18:37:30 -08:00
Adam Langley
6e8184d8cd crypto/tls (part 1)
Rather than drop everything into a single, huge review, I've included
some simple bits of code here.

R=rsc
CC=go-dev
http://go/go-review/1016029
2009-11-02 18:25:20 -08:00
Russ Cox
6334b499e8 fix divide by zero in old glibc dynamic loader
R=r
CC=iant
http://go/go-review/1018024
2009-11-02 14:00:32 -08:00
Rob Pike
236a9de93f remove goroutines from template parsing.
fix up one usage to take advantage.

R=rsc
CC=go-dev
http://go/go-review/1018023
2009-11-02 13:09:31 -08:00
Ian Lance Taylor
f32cde88b6 Define constants for sizes of Sym structures.
R=rsc, agl
http://go/go-review/1016028
2009-11-02 12:53:06 -08:00
Adam Langley
72ec930fa7 Fix cgo for GCC 4.4
Firstly, with -Werror, GCC switched to printing warnings starting
with "error:". Widening the string matches solves this as the messages
are otherwise unchanged.

Secondly, GCC 4.4 outputs DWARF sections with with NUL bytes in all
the offsets and requires the relocation section for .debug_info to be
processed in order to result in valid DWARF data. Thus we add minimal
handling for relocation sections, which is sufficient for our needs.

BUG=1
Fixes #1.

R=rsc, iant
CC=go-dev
http://go/go-review/1017003
2009-11-02 12:02:16 -08:00
Rob Pike
a82465103f use the new routine regexp.MustCompile to clean up some code that uses global regexps.
R=rsc, gri
CC=go-dev
http://go/go-review/1016025
2009-11-02 11:37:52 -08:00
Rob Pike
cd82d490fc eliminate goroutine from testing/regexp too.
R=rsc
CC=go-dev
http://go/go-review/1018021
2009-11-02 11:24:47 -08:00
Adam Langley
ad67a86626 Split constant time functions into crypto/subtle.
R=rsc
CC=go-dev
http://go/go-review/1018020
2009-11-02 11:12:07 -08:00
Russ Cox
d00248980b do not emit USED for global x when compiling "_ = x;"
R=ken@golang.org
CC=r
http://go/go-review/1018019
2009-11-02 10:50:18 -08:00
Rob Pike
acc54b6c70 take goroutines out of regexp so they can be created
during initialization.

R=rsc
CC=go-dev
http://go/go-review/1016023
2009-11-02 10:08:22 -08:00
Robert Griesemer
49d295d592 - initial steps towards showing directory tree instead of
just a single directory
- all pieces present but not well integrated
- directory tree served at the moment under /tree

R=rsc
http://go/go-review/1018016
2009-11-02 09:25:39 -08:00
Robert Griesemer
b67352110f - collect line comments for methods in interfaces
(previously not shown in godoc)
- simplify parsing of struct types (match code structure for parsing interface types)

R=rsc, r
http://go/go-review/1016019
2009-11-02 09:18:02 -08:00
Russ Cox
9dd2e1e30f nil pointer checks in 8g.
fix nil pointer check in 6g.
was dereferencing after the ADD;
dereference before instead.

R=ken@golang.org
CC=iant
http://go/go-review/1016022
2009-11-01 21:04:16 -08:00
Rob Pike
4d310f2434 reverse the arguments to io.Copy so the destination is on the
left, like an assignment, like strcpy, etc.

R=rsc
CC=go-dev
http://go/go-review/1016011
2009-11-01 20:59:49 -08:00
Ian Lance Taylor
f4e3947ffe Permit the CC environment variable to include arguments
(I should have tested the last change a bit more before
submitting).

R=rsc
http://go/go-review/1017011
2009-11-01 16:29:33 -08:00
Ian Lance Taylor
fab7ae15ee Use the environment variable CC as the bootstrap compiler used
to build 6g, 6l, etc.

R=rsc
CC=go-dev
http://go/go-review/1018015
2009-11-01 16:13:37 -08:00
Robert Griesemer
b96ad80949 enable all (but one) test cases in test.sh that
were excluded before because of incorrect comment
formatting (comment formatting is mostly idempotent
at this point)

R=rsc
http://go/go-review/1018014
2009-11-01 15:27:10 -08:00
Ian Lance Taylor
d8efcdcd52 These files were moved to encoding/base64. The directory was
already removed from the Makefile.

R=rsc
http://go/go-review/1017006
2009-11-01 15:04:46 -08:00
Russ Cox
35ace1d1f5 split ipsock.go, sock.go, and unixsock.go out of net.go
prior to cleanup.  no changes, only moving.

remove dependencies on strconv and strings

R=r
http://go/go-review/1017010
2009-11-01 11:15:34 -08:00
Russ Cox
fd1add2768 syscall cleanup.
* rename PORT.sh -> mkall.sh (hopefully more obvious),
   change behavior: run commands by default.
 * pull more constants out of #defines automatically,
   instead of editing large lists by hand.
 * add Recvfrom, Sendto

add os.O_EXCL.

R=r
http://go/go-review/1017009
2009-11-01 11:13:27 -08:00
Robert Griesemer
5223218307 don't update sync time if no files have changed
(and thus avoid re-indexing after every sync attempt)

R=rsc
http://go/go-review/1016010
2009-11-01 10:33:16 -08:00
Russ Cox
a64b69da9e os cleanup.
dir_* and stat_* are just os specific,
not os+arch-specific.

R=r
http://go/go-review/1018010
2009-11-01 09:37:13 -08:00
Russ Cox
7732d80ceb misc cleanup
R=r
http://go/go-review/1016017
2009-11-01 09:25:55 -08:00
Russ Cox
b72153310d allow unpacking of json map into Go map,
now that reflection supports it.

R=r
http://go/go-review/1015008
2009-11-01 05:49:07 -08:00
Russ Cox
bf991bb7df Make.pkg: add DEPS= support
allow Makefiles using Make.pkg to specify a
list of directories that should be installed
before trying to build the package.
this is a stopgap for small package trees
maintained outside the standard tree.

R=r
http://go/go-review/1016012
2009-11-01 05:43:26 -08:00
Rob Pike
63e668d2ad return "<nil>" when calling String() on a nil bytes.Buffer.
R=rsc
CC=go-dev
http://go/go-review/1016005
2009-10-31 13:28:22 -07:00
Ian Lance Taylor
b534eb462b Don't use fallthrough in a type switch.
R=rsc
http://go/go-review/1018005
2009-10-30 16:10:42 -07:00
Robert Griesemer
fb12ad063e fix build
R=agl
CC=rsc
http://go/go-review/1016008
2009-10-30 13:19:04 -07:00
Robert Griesemer
1e984cb913 improved comment formatting:
- print comments line by line, strip common prefix but do not
  modify comment contents otherwise
- align comments with subsequent keyword if indicated (e.g. case labels)
- terminate "column section" after multi-line expressions for better alignment

R=rsc
http://go/go-review/1017002
2009-10-30 13:17:14 -07:00
Russ Cox
09f4261841 split godoc/godoc.go into godoc/godoc.go
and godoc/main.go.

R=gri
CC=r
http://go/go-review/1017005
2009-10-30 10:58:53 -07:00
Kai Backman
1d0b65d33f added missing sgen reverse character copy code.
R=rsc
http://go/go-review/1018006
2009-10-30 09:38:30 -07:00
Kai Backman
770b872752 clone and futex
go/test: passes 99% (343/347)

R=rsc
http://go/go-review/1016004
2009-10-29 21:21:14 -07:00
Adam Langley
09d68334cc Forgot to change quickcheck to quick in the Makefile.
TBR=rsc

R=rsc
http://go/go-review/1017004
2009-10-29 18:34:44 -07:00
Adam Langley
9e96f25fa2 Add RSA PKCS#1 v1.5 support.
R=go-dev
APPROVED=rsc
DELTA=407  (400 added, 0 deleted, 7 changed)
OCL=36007
CL=36146
2009-10-29 17:38:25 -07:00
Adam Langley
878d0e1efd Add a quickcheck package which is a little like the Haskell one of the same
name.

R=rsc
APPROVED=rsc
DELTA=566  (566 added, 0 deleted, 0 changed)
OCL=35974
CL=36111
2009-10-28 15:16:20 -07:00
Stephen Ma
74aa9dd55a Hack to make cgo's generated go code compile when there are no
unsafe.Pointer references inside the C declarations.

R=go-dev
APPROVED=rsc
DELTA=1  (1 added, 0 deleted, 0 changed)
OCL=36063
CL=36063
2009-10-26 21:21:53 -07:00
Rob Pike
449086eec9 Change Stat to Lstat in Readdir so we don't recur when someone symlinks "."
R=rsc
CC=go-dev
http://go/go-review/1018003
2009-10-29 10:53:37 -07:00
Adam Langley
b89d630977 Fix bug when sending via select.
selfree maintains a cache of Select structures for several sizes. In
newselect, we'll use an entry from the cache if one is found. However,
the Scase structures corresponding to a send may have been allocated
for the wrong size. In this case we'll write off the end of the Scase
into random memory and, generally, read some amount of junk in the
receive.

This patch fixes the issue by removing the cache, on the advice of
rsc.

R=rsc
CC=go-dev
http://go/go-review/1016002
2009-10-28 18:23:53 -07:00
Robert Griesemer
c54cb4cb4d - added missing formatters in templates
- replaced deprecated use of </font> with </span> tag
- added html escaping to godoc formatters where missing
- enabled text format for package documentation

R=rsc
http://go/go-review/1017001
2009-10-28 16:19:09 -07:00
Russ Cox
32e979c0de mysterious bug: runtime.acid wasn't getting rebuilt
when switching architectures.

fix bug twice: make sure clean removes the file,
and generate into architecture-specific file names.

R=r
http://go/go-review/1013018
2009-10-28 14:03:16 -07:00
Robert Griesemer
5a02eb65ef fix for long label names impacting column width of previous lines
R=rsc
http://go/go-review/1013017
2009-10-28 10:14:59 -07:00
Russ Cox
d2829faa7c files that are okay from the last gofmt round
R=gri
http://go/go-review/1015011
2009-10-27 22:47:54 -07:00
Kai Backman
58ee1f5d54 shift for non-64 bit integers.
R=rsc
http://go/go-review/1015017
2009-10-27 22:38:45 -07:00
Robert Griesemer
e3fd2e1ec6 godoc search bug fixes:
- sort by package name (instead of package path) for results with snippets
- sort line numbers in results without snippets
- properly characterize package clauses
- experiment with a leaner look: no underlines for top-level godoc links in the left side bar

Still using colors to distinguish results. Next step.

R=rsc
http://go/go-review/1015016
2009-10-27 16:08:12 -07:00
Robert Griesemer
32810a5ded code search for godoc:
- added goroutine to automatically index in the background
- added handler for search requests
- added search box to top-level godoc template
- added search.html template for the display of search results
- changes to spec.go because of name conflicts
- added extra styles to style.css (for shorter .html files)

R=rsc
http://go/go-review/1014011
2009-10-27 10:34:31 -07:00
Ian Lance Taylor
f529224039 Get the right sigaction struct for the 386 rt_sigaction system
call.  This uses the header files from a 32-bit Ubuntu Hardy
system.

The use of _LOOSE_KERNEL_NAMES seems right.  The
-D__ARCH_SI_UID_T works around a bug which appears to be fixed
in later Linux versions.

R=rsc
http://go/go-review/1013015
2009-10-26 22:49:08 -07:00
Kai Backman
1228112b50 bug162, large indices on nil references
R=rsc
http://go/go-review/1013016
2009-10-26 21:49:32 -07:00
Robert Griesemer
ae3c9992ae - gofmt-ify walk.go
- fixed several bugs

R=rsc
http://go/go-review/1015015
2009-10-26 19:21:13 -07:00
Robert Griesemer
5a75ac88c9 - indexing component for godoc
R=rsc
http://go/go-review/1015014
2009-10-26 18:32:51 -07:00
Adam Langley
569a1cd545 Add encoding/hex
R=rsc
http://go/go-review/1015012
2009-10-26 16:34:36 -07:00
Robert Griesemer
57035a9041 snippet generator for godoc search results
R=rsc
http://go/go-review/1013014
2009-10-26 15:47:56 -07:00
Kai Backman
5cc32a5348 fix defer. gave up on unified code for defer and go for now.
R=rsc
http://go/go-review/1014010
2009-10-26 08:02:19 -07:00
Kai Backman
dfeceddd3f make 5l ignore multiple defs, remove use of multiple
defs from embed1 and gotest

R=rsc
http://go/go-review/1014009
2009-10-25 11:59:58 -07:00
Kai Backman
9e99383df5 frame size > StackBig support
R=rsc
http://go/go-review/1015010
2009-10-25 11:51:48 -07:00
Kai Backman
6f91ba1b0f proper syscall convention for arm
R=rsc
http://go/go-review/1015009
2009-10-25 11:51:16 -07:00
Kai Backman
68d5c51287 fix conditional branch instructions for unsigned ints and
float. fix sgen endianess in sgen character copying.

        go/test: passes 97% (336/345)

R=rsc
http://go/go-review/1015007
2009-10-24 22:47:25 -07:00
Rob Pike
c91e89d539 remove reference to p4 in comment.
R=gri
CC=rsc
http://go/go-review/1014008
2009-10-24 14:27:49 -07:00
Kai Backman
f860bc0f4e fixed len/cap for chan. disable gc for now.
go/test: passes 93% (323/345)

R=rsc
http://go/go-review/1015006
2009-10-23 20:31:03 -07:00
Rob Pike
1726e81c00 publish Request.Write (rename from Request.write)
R=rsc
CC=go-dev
http://go/go-review/1015003
2009-10-23 14:19:47 -07:00
Kai Backman
b74fd8ecb1 fix build issue cause by transition to hg
R=rsc
http://go/go-review/1013012
2009-10-23 12:43:01 -07:00
Kai Backman
942d6590d9 one more argsize fix. we were copying with the correct
alignment but not enough (duh).

R=rsc
APPROVED=rsc
DELTA=16  (13 added, 0 deleted, 3 changed)
OCL=36020
CL=36024
2009-10-23 11:03:16 -07:00
Kai Backman
dec1ec34bf all of pkg now compiles, fixes a few more tests
go/test: passes 90% (313/345)

R=rsc
APPROVED=rsc
DELTA=90  (83 added, 3 deleted, 4 changed)
OCL=36011
CL=36023
2009-10-23 11:00:59 -07:00
Kai Backman
0af8e1045c fix off by 4 bug in morestack (lr again). remove storing of r0
now that all arguments are passed on the stack.

go/test: passes 89% (310/345)

R=rsc
APPROVED=rsc
DELTA=33  (13 added, 14 deleted, 6 changed)
OCL=36009
CL=36022
2009-10-23 10:59:31 -07:00
Kai Backman
a9e03ae52a fix broken code produced for ominus
go/test: passes 89% (308/345)

R=rsc
APPROVED=rsc
DELTA=10  (5 added, 0 deleted, 5 changed)
OCL=36005
CL=36021
2009-10-23 10:58:29 -07:00
Kai Backman
03bbfe6724 fix off by 4 in newproc arg copying.
R=rsc
APPROVED=rsc
DELTA=4  (0 added, 0 deleted, 4 changed)
OCL=36001
CL=36004
2009-10-22 13:31:52 -07:00
Robert Griesemer
34e8075259 fix computation of sync delay
R=rsc
http://go/go-review/1013011
2009-10-23 11:35:40 -07:00
Ian Lance Taylor
fd5fa4b301 Fix the sigaction declaration to match the system for Linux.
I don't know whether Darwin needs a change here.

R=rsc
http://go/go-review/1013010
2009-10-22 23:51:54 -07:00
Ian Lance Taylor
057f7d5b07 s/pc/PC/ in traceback output to match amd64.
test/run expects to see "PC".

R=rsc
http://go/go-review/1015002
2009-10-22 23:38:34 -07:00
Ian Lance Taylor
95499a27ea Fix printer_test.go to invoke Fprint as a method of cfg.
This matches the change to printer.go in revision 3632.

R=gri
http://go/go-review/1015001
2009-10-22 22:19:22 -07:00
Robert Griesemer
8f52a82169 - make printer interface easily extensible w/o breaking clients (in the future)
- replacement for p4 CL 35999 (abandoned)

R=rsc
http://go/go-review/1012010
2009-10-22 18:19:49 -07:00
Robert Griesemer
abc6ad427d minor changes to walk
R=rsc
http://go/go-review/1012008
2009-10-22 18:04:21 -07:00
Robert Griesemer
ba15bbe654 simple AST walking support
R=rsc
http://go/go-review/1014006
2009-10-22 16:35:53 -07:00
Rob Pike
8a20cfc009 fix build: no acid
R=rsc
http://go/go-review/1014005
2009-10-22 11:52:35 -07:00
Russ Cox
219fb02042 fix build after Mercurial move.
various missing or incorrect files.

R=r
CC=go-dev
http://go/go-review/1014004
2009-10-22 10:59:27 -07:00
Robert Griesemer
90cc4a5949 go/printer:
- handle HTML tagging via (client-installable) Stylers

go/doc:
- basic styler support
- some factoring
- ready to contain the search code (but for now excluded)

doc/style.css:
- updated

doc/go_spec.css:
- cleanup: replace deprecated uses of <font> tag with <span> tag

R=rsc
DELTA=302  (160 added, 62 deleted, 80 changed)
OCL=35973
CL=35996
2009-10-22 09:41:38 -07:00
Austin Clements
3040f067c3 Interface types, values, and type compiler. This does not yet
implement any type checking or semantics for interfaces.

R=rsc
APPROVED=rsc
DELTA=305  (289 added, 10 deleted, 6 changed)
OCL=35889
CL=35995
2009-10-22 08:59:18 -07:00
Rob Pike
c6e904d580 have http server in-line PDF files.
add go course pdf files to doc/ for godoc to serve.
fix links to point to those files.

R=rsc
DELTA=7  (4 added, 0 deleted, 3 changed)
OCL=35972
CL=35981
2009-10-21 19:52:11 -07:00
Adam Langley
a8a678fc2a Add SetValue(Value) to the Value interface.
R=rsc
APPROVED=rsc
DELTA=172  (170 added, 0 deleted, 2 changed)
OCL=35969
CL=35980
2009-10-21 19:51:27 -07:00
Rob Pike
f1b91263d8 fix typo/oversight: s/Title/ToTitle/. the comment was already correct
R=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35964
CL=35979
2009-10-21 19:51:05 -07:00
Adam Langley
1d390cec1e Replace SliceReader with bytes.Buffer.
R=r
APPROVED=r
DELTA=16  (0 added, 15 deleted, 1 changed)
OCL=35976
CL=35978
2009-10-21 19:49:01 -07:00
Adam Langley
7d68093f93 Fix typo in documentation.
R=r
APPROVED=r
DELTA=2  (1 added, 0 deleted, 1 changed)
OCL=35977
CL=35977
2009-10-21 19:47:52 -07:00
Adam Langley
fd74a835bc Add initial x509 code.
R=rsc
APPROVED=rsc
DELTA=659  (659 added, 0 deleted, 0 changed)
OCL=35932
CL=35975
2009-10-21 17:53:50 -07:00
Kai Backman
c2eb89af92 change stack splitting comparisons from signed to unsigned (oversight)
R=rsc
APPROVED=rsc
DELTA=9  (0 added, 0 deleted, 9 changed)
OCL=35911
CL=35952
2009-10-21 09:44:23 -07:00
David Symonds
69fc06dfa1 Move usr/dsymonds/iterable to src/pkg/exp/iterable.
Remove remainder of usr/dsymonds.

R=rsc,r
APPROVED=r
DELTA=685  (275 added, 409 deleted, 1 changed)
OCL=35810
CL=35933
2009-10-20 14:10:22 -07:00
Robert Griesemer
f591591a28 remove superfluous tracing support
R=rsc
DELTA=5  (0 added, 4 deleted, 1 changed)
OCL=35930
CL=35930
2009-10-20 13:30:32 -07:00
Russ Cox
357b770def base64 -> encoding/base64
base85 -> encoding/ascii85, encoding/git85
debug/binary -> encoding/binary

R=r
DELTA=3190  (1884 added, 1297 deleted, 9 changed)
OCL=35923
CL=35929
2009-10-20 13:00:16 -07:00
Robert Griesemer
4213c22301 Updated and simplified gofmt.
- operates on stdin, a single file, or all files in a file tree
- setting -w flag writes to (source) file instead of stdout
- setting -l flag lists files whose formatting has changed

R=rsc
DELTA=201  (102 added, 71 deleted, 28 changed)
OCL=35890
CL=35926
2009-10-20 12:07:31 -07:00
Russ Cox
fcc4be8c65 Add base85, based on base64.
Also add git version of base85,
which is what I really wanted but
didn't recognize as different until it
was too late.

R=austin
DELTA=980  (972 added, 4 deleted, 4 changed)
OCL=35580
CL=35921
2009-10-20 09:04:09 -07:00
Russ Cox
60ff8cc86f address bug193 and add note to spec about it.
R=ken
OCL=35920
CL=35920
2009-10-20 08:27:14 -07:00
Russ Cox
02fd255a14 bug162, over and over
R=ken
OCL=35919
CL=35919
2009-10-20 08:03:43 -07:00
Kai Backman
dde4090372 removed tempalloc/tempfree and replaced with tempname
go/test: passes 88% (304/345)

R=rsc
APPROVED=rsc
DELTA=67  (3 added, 54 deleted, 10 changed)
OCL=35910
CL=35910
2009-10-19 22:47:25 -07:00
Russ Cox
fcb9387089 support for 5.out files
R=kaib
DELTA=1262  (1247 added, 7 deleted, 8 changed)
OCL=35907
CL=35909
2009-10-19 22:33:56 -07:00
Kai Backman
33a7bcf315 getcallerpc and setcallerpc
go/test: passes 87% (303/345)

R=rsc
APPROVED=rsc
DELTA=19  (5 added, 6 deleted, 8 changed)
OCL=35903
CL=35906
2009-10-19 21:58:16 -07:00
Russ Cox
a15648658f bug196
R=ken
OCL=35905
CL=35905
2009-10-19 21:10:29 -07:00
Russ Cox
62c4818ee0 bug136
R=ken
OCL=35902
CL=35904
2009-10-19 20:39:18 -07:00
Kai Backman
a15aa05ae2 first version of closures. test/closure doesn't yet pass.
go/test: passes 87% (300/343)

R=rsc
APPROVED=rsc
DELTA=125  (125 added, 0 deleted, 0 changed)
OCL=35893
CL=35900
2009-10-19 19:59:39 -07:00
Russ Cox
1be74762c1 bug169
R=ken
OCL=35899
CL=35899
2009-10-19 19:55:17 -07:00
Russ Cox
4c3a85d73a 6g bug fixes:
* bug211
 * embedded interfaces with lowercase methods
 * var _ = f() at top level

R=ken
OCL=35898
CL=35898
2009-10-19 19:27:40 -07:00
Russ Cox
8fffa1d698 bug190.
also eliminate float80 dregs

R=ken
OCL=35894
CL=35896
2009-10-19 18:47:37 -07:00
Robert Griesemer
e76cce1a6d support one-line functions
R=rsc
DELTA=207  (160 added, 42 deleted, 5 changed)
OCL=35854
CL=35887
2009-10-19 13:57:51 -07:00
Kai Backman
b4896b496e function literals
go/test: passes 86% (297/343)

R=rsc
APPROVED=rsc
DELTA=14  (10 added, 1 deleted, 3 changed)
OCL=35881
CL=35884
2009-10-19 12:44:08 -07:00
Russ Cox
21b41bec83 test and fix http redirect handling
BUG=2197242
R=r
DELTA=16  (16 added, 0 deleted, 0 changed)
OCL=35878
CL=35882
2009-10-19 12:10:14 -07:00
Adam Langley
4d4e885bd1 Add an RSA-OAEP implementation.
R=rsc
APPROVED=rsc
DELTA=734  (734 added, 0 deleted, 0 changed)
OCL=35738
CL=35879
2009-10-19 11:52:44 -07:00
Robert Griesemer
4adad657de directory tree walk w/ visitor per rsc's suggestion
R=rsc,r
DELTA=193  (191 added, 0 deleted, 2 changed)
OCL=35849
CL=35877
2009-10-19 11:48:04 -07:00
Kai Backman
8037e3ba5e fix arm build, add 64 bit cgen_asop
R=rsc
APPROVED=rsc
DELTA=21  (21 added, 0 deleted, 0 changed)
OCL=35845
CL=35845
2009-10-16 12:02:14 -07:00
Russ Cox
d5337e9829 fix linux build:
i renamed sys to runtime but didn't remember this file.
(and the darwin build doesn't use it.)

TBR=r
OCL=35826
CL=35826
2009-10-15 23:57:04 -07:00
Russ Cox
22a5c78f44 rename sys functions to runtime,
because they are in package runtime.

another step to enforcing package boundaries.

R=r
DELTA=732  (114 added, 93 deleted, 525 changed)
OCL=35811
CL=35824
2009-10-15 23:10:49 -07:00
Russ Cox
488ca3c7a6 move math out of runtime.
a step toward enforcing package boundaries,
necessary to eliminate global package name space.

R=r
DELTA=581  (310 added, 271 deleted, 0 changed)
OCL=35805
CL=35823
2009-10-15 23:09:22 -07:00
Robert Griesemer
738c58ca75 improved handling of expression lists
R=rsc
DELTA=189  (118 added, 9 deleted, 62 changed)
OCL=35816
CL=35821
2009-10-15 22:52:11 -07:00
Kai Backman
4f7aa31862 fix minor typo in float conversions
R=rsc
APPROVED=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=35820
CL=35820
2009-10-15 22:30:57 -07:00
Stephen Ma
f9e08759de Trivial documentation fix for func ListenAndServe().
R=go-dev
APPROVED=gri
DELTA=1  (1 added, 0 deleted, 0 changed)
OCL=35817
CL=35819
2009-10-15 22:18:14 -07:00
Kai Backman
545dbd810c fix OINDEX address generation, leftover misunderstanding about
how scale works on amd64/386

go/test: passes 85% (294/342)

R=rsc
APPROVED=rsc
DELTA=27  (26 added, 1 deleted, 0 changed)
OCL=35815
CL=35818
2009-10-15 22:16:31 -07:00
Kai Backman
3f085e643d fix arm build
R=rsc
APPROVED=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35812
CL=35814
2009-10-15 21:27:09 -07:00
Kai Backman
222a15c840 test/64bit.go passes but doesn't generate properly yet.
R=rsc
APPROVED=rsc
DELTA=235  (98 added, 38 deleted, 99 changed)
OCL=35789
CL=35813
2009-10-15 19:41:51 -07:00
Robert Griesemer
3f427bc9c8 update Make.deps
R=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=35808
CL=35808
2009-10-15 17:54:57 -07:00
Russ Cox
5bbd4c2f1b publish semacquire and semrelease for use by sync.
more enforcing package boundaries

R=r
DELTA=46  (13 added, 15 deleted, 18 changed)
OCL=35806
CL=35806
2009-10-15 17:46:53 -07:00
Robert Griesemer
b80d36d846 - implemented utility functions for directory reading/traversal
- added tests

R=rsc
DELTA=62  (61 added, 1 deleted, 0 changed)
OCL=35788
CL=35802
2009-10-15 16:34:05 -07:00
Russ Cox
4e4097d9d9 386 shift bug; wasn't zero-extending 16- and 8-bit counts
+test

R=ken
OCL=35801
CL=35801
2009-10-15 16:32:45 -07:00
Russ Cox
a75e347a21 do not migrate x to the heap because of *&x.
R=ken
OCL=35799
CL=35799
2009-10-15 16:03:01 -07:00
Austin Clements
049501ce4c Implement error handling on process monitor exit. Now, before
sending any message to the monitor, the sender must check a
"ready" channel.  Before exiting, the monitor records its exit
error and closes this channel, ensuring that all later reads
from the ready channel will immediately return false.

Inspired by
http://chplib.wordpress.com/2009/09/30/poison-concurrent-termination/

R=rsc
APPROVED=rsc
DELTA=47  (27 added, 11 deleted, 9 changed)
OCL=35782
CL=35784
2009-10-15 12:59:59 -07:00
Robert Griesemer
974b23f569 close file after use
R=rsc
DELTA=1  (1 added, 0 deleted, 0 changed)
OCL=35778
CL=35780
2009-10-15 12:04:13 -07:00
Dave Bort
3342574206 Define the new Rand and Source types to allow creating
isolated sources of random values.

Add normal and exponential distributions.

Add some tests for the normal and exponential distributions.

R=rsc
APPROVED=rsc
DELTA=1005  (904 added, 80 deleted, 21 changed)
OCL=35501
CL=35779
2009-10-15 11:46:37 -07:00
Russ Cox
18325313fb add exp/eval to pkg list
update Make.deps.

fixes build

TBR=r
OCL=35777
CL=35777
2009-10-15 11:05:23 -07:00
Russ Cox
98089b68a3 nacl demos
R=r
DELTA=9147  (9147 added, 0 deleted, 0 changed)
OCL=35734
CL=35776
2009-10-15 11:04:33 -07:00
Russ Cox
4113ca5fb1 explain exp
R=r
DELTA=3  (3 added, 0 deleted, 0 changed)
OCL=35732
CL=35775
2009-10-15 11:02:18 -07:00
Robert Griesemer
8c101739d9 - bug fix: must not insert indentation tabs into multi-line strings in RawFormat
(always write tabwriter.Escape chars so formatting is driven correctly; but strip
  them again in the end if no tabwriter is used)
- added testcase for RawFormat printing

R=rsc
DELTA=227  (198 added, 6 deleted, 23 changed)
OCL=35772
CL=35774
2009-10-15 10:41:07 -07:00
Robert Griesemer
8f8a393b40 bug fix: do not modify (string) literals in any way even if they
contain tabs or line breaks

R=rsc
DELTA=57  (19 added, 12 deleted, 26 changed)
OCL=35749
CL=35770
2009-10-15 09:29:31 -07:00
Robert Griesemer
b55e6d1ba5 permit escaped text segments which pass through tabwriter
undisturbed and uninterpreted

R=rsc
DELTA=141  (82 added, 23 deleted, 36 changed)
OCL=35747
CL=35769
2009-10-15 09:28:52 -07:00
Robert Griesemer
da829d6608 Work-around for factory function heuristic failure:
only associate a couple of functions as factories
for os.Error.

Replaces CL 35628 (abandoned).

R=rsc
DELTA=35  (26 added, 0 deleted, 9 changed)
OCL=35754
CL=35768
2009-10-15 09:24:19 -07:00
Rob Pike
a34dd7156b typo
R=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35743
CL=35762
2009-10-15 00:27:40 -07:00
Kai Backman
b83549a7e6 cas
R=rsc
APPROVED=rsc
DELTA=31  (1 added, 8 deleted, 22 changed)
OCL=35752
CL=35757
2009-10-14 21:47:28 -07:00
Kai Backman
f72ea8eb76 LDREX and STREX
R=rsc
APPROVED=rsc
DELTA=30  (30 added, 0 deleted, 0 changed)
OCL=35751
CL=35756
2009-10-14 21:47:08 -07:00
Russ Cox
3ddb7daa97 fix build:
avoid infinite loop when cd fails.

TBR=r
OCL=35750
CL=35750
2009-10-14 18:29:33 -07:00
Russ Cox
2b7fde3406 move austin/eval and austin/ogle to exp/eval and exp/ogle
R=r
OCL=35736
CL=35746
2009-10-14 18:10:43 -07:00
Russ Cox
218a412e73 forgot to update Makefile in last CL
R=gri
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35737
CL=35745
2009-10-14 18:10:00 -07:00
Russ Cox
7d795d8c01 move native client to exp/nacl.
R=r
DELTA=3706  (1857 added, 1849 deleted, 0 changed)
OCL=35731
CL=35741
2009-10-14 17:16:21 -07:00
Russ Cox
c058e20a18 move draw to exp
R=r
DELTA=942  (471 added, 471 deleted, 0 changed)
OCL=35733
CL=35740
2009-10-14 17:15:56 -07:00
Russ Cox
17dfa682ae move datafmt into exp
R=gri
DELTA=3006  (1503 added, 1503 deleted, 0 changed)
OCL=35730
CL=35735
2009-10-14 16:55:05 -07:00
Russ Cox
a68592a4dd excise some internal references.
R=r
DELTA=209  (65 added, 114 deleted, 30 changed)
OCL=35718
CL=35721
2009-10-14 13:02:05 -07:00
Russ Cox
b7ef541f35 toss crypto/block Digest in favor of hash.Hash
R=r
DELTA=30  (8 added, 15 deleted, 7 changed)
OCL=35677
CL=35713
2009-10-14 09:33:15 -07:00
Rob Pike
f6d67c9e95 write stack traces and panics to stderr
R=rsc
DELTA=31  (5 added, 3 deleted, 23 changed)
OCL=35700
CL=35700
2009-10-13 22:48:03 -07:00
Nigel Tao
cb1ad7e765 Documentation for png.Decode and png.Encode.
R=r,rsc
APPROVED=r
DELTA=7  (5 added, 0 deleted, 2 changed)
OCL=35651
CL=35692
2009-10-13 17:14:49 -07:00
Rob Pike
76d585e5af delete silly TODO
R=rsc
DELTA=1  (0 added, 1 deleted, 0 changed)
OCL=35685
CL=35687
2009-10-13 15:55:44 -07:00
Adam Langley
c071da4a26 Add ASN.1 parser.
R=rsc
APPROVED=rsc
DELTA=1459  (1459 added, 0 deleted, 0 changed)
OCL=35389
CL=35681
2009-10-13 14:37:48 -07:00
Rob Pike
8acb8fb780 reduce stutter: sort.SortInterface -> sort.Interface.
ditto for heap.HeapInterface

R=gri,rsc
DELTA=31  (0 added, 1 deleted, 30 changed)
OCL=35665
CL=35673
2009-10-13 13:05:16 -07:00
Rob Pike
fd4767f2c5 rename the source directory for gopack from ar to gopack.
remove the references to 6ar

R=rsc
DELTA=3547  (1770 added, 1775 deleted, 2 changed)
OCL=35669
CL=35671
2009-10-13 12:37:28 -07:00
Robert Griesemer
4700ded282 bug fix: convert \v's into \t's if there's no tabwriter
R=rsc
DELTA=15  (12 added, 2 deleted, 1 changed)
OCL=35641
CL=35645
2009-10-12 19:08:17 -07:00
Robert Griesemer
df7efaf9e8 - improved comment intersperse heuristic:
comments should now be indented properly in corner cases
  (at the end of statement lists, for instance)

- changed import decl. formatting as suggested by Russ (no "global"
  indentation of imports if there are renames present)

- better field list handling

- better documentation

R=rsc
DELTA=534  (324 added, 35 deleted, 175 changed)
OCL=35557
CL=35630
2009-10-12 17:10:50 -07:00
Kai Backman
101f7cbd61 changed 5c 64 bit word ordering to little endian so it matches
5g. fixes to 64 bit code gen. added (finally) function to do
shifts properly.

go/test: passes 83% (287/342)

R=rsc
APPROVED=rsc
DELTA=156  (50 added, 53 deleted, 53 changed)
OCL=35589
CL=35616
2009-10-12 13:35:28 -07:00
Russ Cox
2372408189 sort errors by line number
turn off testdclstack and "not used" errors
when there are syntax errors.

BUG=2181825
R=ken
OCL=35606
CL=35608
2009-10-12 11:03:48 -07:00
Russ Cox
add89dd1ba stack overflow debugging and fix.
* in 6l, -K already meant check for stack underflow.
    add -KK to mean double-check stack overflows
    even in nosplit functions.

  * comment out print locks; they deadlock too easily
     but are still useful to put back for special occasions.

  * let runcgo assembly switch to scheduler stack
    without involving scheduler directly.  because runcgo
    gets called from matchmg, it is too hard to keep it
    from being called on other stacks.

R=r
DELTA=94  (65 added, 18 deleted, 11 changed)
OCL=35591
CL=35604
2009-10-12 10:26:38 -07:00
Russ Cox
fd76b4f385 new builtin.c.boot from arm.
node printing fixes.
silence incorrect redeclaration error.

R=ken
OCL=35602
CL=35602
2009-10-12 10:12:37 -07:00
Russ Cox
10c7d19e07 fix comment on strings.LastIndex.
add bytes.LastIndex.
add strings.Reader.

R=r
DELTA=59  (56 added, 0 deleted, 3 changed)
OCL=35585
CL=35601
2009-10-12 10:09:35 -07:00
Russ Cox
d0aac0ace1 introduce non-strict mode in xml parser,
good enough to parse some html.

in reader, add "comment" tag to collect
comment text.

do not allocate during Unmarshal unless pointer is nil.

R=r
DELTA=441  (416 added, 1 deleted, 24 changed)
OCL=35586
CL=35594
2009-10-11 23:51:46 -07:00
Russ Cox
fcdba72d2a correct a design flaw: Atoi etc should not guess the base.
leave that for Btoi with base == 0.

R=r
DELTA=146  (101 added, 29 deleted, 16 changed)
OCL=35584
CL=35593
2009-10-11 23:46:11 -07:00
Kai Backman
6d0983ae46 64bit and float code generation. fmt compiles but
reflect is broken so fmt doesn't work.

go/test: passes 83% (285/342)

R=rsc
APPROVED=rsc
DELTA=415  (240 added, 29 deleted, 146 changed)
OCL=35576
CL=35588
2009-10-11 20:01:11 -07:00
Nigel Tao
64145109b3 PNG encoder now filters.
R=r,rsc
APPROVED=r
DELTA=122  (102 added, 0 deleted, 20 changed)
OCL=35573
CL=35587
2009-10-11 19:36:29 -07:00
Rob Pike
c0e0f82e49 better code for allocation through indirection
R=rsc
DELTA=11  (3 added, 5 deleted, 3 changed)
OCL=35583
CL=35583
2009-10-11 18:07:47 -07:00
Rob Pike
330ab5fddb fix bugs in gob.
1) didn't handle attempts to encode non-structs properly.
2) if there were multiple indirections involving allocation, didn't allocate the
intermediate cells.
tests added.

R=rsc
DELTA=82  (65 added, 5 deleted, 12 changed)
OCL=35582
CL=35582
2009-10-11 17:37:22 -07:00
Kai Backman
1620023d03 fix float <-> int64 conversions
R=rsc
APPROVED=rsc
DELTA=25  (25 added, 0 deleted, 0 changed)
OCL=35566
CL=35574
2009-10-10 22:06:26 -07:00
Rob Pike
5743fb594f change Title to ToTitle for consistency. (the doc comment was already right)
R=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35572
CL=35572
2009-10-10 18:56:13 -07:00
Rob Pike
86cfaf66a7 reallocate library, libraryobj: 50 isn't nearly enough
R=rsc
DELTA=7  (2 added, 0 deleted, 5 changed)
OCL=35569
CL=35569
2009-10-10 12:29:06 -07:00
Nigel Tao
6e4f935369 In the PNG reader inner loop, collapse the two ReadFull calls into one.
R=rsc,r
APPROVED=rsc
DELTA=29  (2 added, 4 deleted, 23 changed)
OCL=35460
CL=35565
2009-10-09 22:44:40 -07:00
Russ Cox
fb1bcd47c6 acid bug fix.
lock printf output to avoid interlacing debug prints.

R=r
DELTA=10  (7 added, 0 deleted, 3 changed)
OCL=35539
CL=35561
2009-10-09 16:45:20 -07:00
Russ Cox
c736b6579f bug209
R=ken
OCL=35546
CL=35546
2009-10-09 16:01:32 -07:00
Rob Pike
a14a8b2739 change date format in logs - was missing slash between month and day
R=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=35526
CL=35540
2009-10-09 15:44:57 -07:00
Russ Cox
93689d863c keep a list of all the M's,
so that the garbage collector doesn't free them.

R=ken
OCL=35538
CL=35538
2009-10-09 15:35:33 -07:00
Dave Bort
9aa68dbdb6 Move rand.go to rng.go to prepare for some surgery.
R=rsc
APPROVED=rsc
DELTA=637  (318 added, 318 deleted, 1 changed)
OCL=35534
CL=35536
2009-10-09 15:16:00 -07:00
Russ Cox
f0bde7c51b fix nacl build
R=r
DELTA=23  (5 added, 0 deleted, 18 changed)
OCL=35510
CL=35518
2009-10-09 11:15:19 -07:00
Kai Backman
6084dcdd07 floating point calc, added a few more packages that pass
go/test: passes 80% (274/340)

R=rsc
APPROVED=rsc
DELTA=61  (59 added, 0 deleted, 2 changed)
OCL=35506
CL=35517
2009-10-09 07:37:49 -07:00
Russ Cox
680ee6af63 add & fix bug208, from ken.
fix bug198.

R=ken
OCL=35504
CL=35507
2009-10-08 23:03:34 -07:00
Kai Backman
98fff8ffb2 dupok, gcc compile fix, sync and syscall asm fix
R=rsc
APPROVED=rsc
DELTA=27  (18 added, 0 deleted, 9 changed)
OCL=35503
CL=35505
2009-10-08 22:16:08 -07:00
Robert Griesemer
517839aa40 - debugging support
R=rsc
DELTA=110  (98 added, 0 deleted, 12 changed)
OCL=35487
CL=35490
2009-10-08 15:23:49 -07:00
Russ Cox
094f1d5990 more lgtm files from gofmt
R=gri
OCL=35485
CL=35488
2009-10-08 15:14:54 -07:00
Ian Lance Taylor
8231548365 Only clean the relevant installed files, not everything. This
should let a 6g build and an 8g build be done in sequence
without stepping on each other.

R=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=35478
CL=35481
2009-10-08 13:35:46 -07:00
Robert Griesemer
7ecfb021f3 - rewrite declaration printing to take full use of discardable tabwriter columns
- honor line breaks in multi-line expressions
- do not add extra indentation to multi-line string lists
- don't put blanks around simple function calls and conversions
- do not modify `` strings
- added extra test cases

R=rsc
DELTA=398  (246 added, 51 deleted, 101 changed)
OCL=35453
CL=35465
2009-10-08 08:48:33 -07:00
Nigel Tao
093af4e512 PNG encoder unit test.
R=rsc,r
APPROVED=r
DELTA=84  (77 added, 6 deleted, 1 changed)
OCL=35456
CL=35458
2009-10-07 23:14:23 -07:00
Russ Cox
55edf49a01 add & fix bug207: rewritten if condition
was discarding initialization work.

R=ken
OCL=35454
CL=35457
2009-10-07 22:19:42 -07:00
Russ Cox
d515063588 better handling of mistaken top-level variable
references during the parsing of :=.  the base
problem is that when reading

	a,b,c,d

the parser makes those refer to existing variables,
which might create a few stub top-level ones
for undefined names, but then if a := is the next
token, we need to undo those stubs.

this was causing problems in multifile packages
in which one file used a := variable named rpc
and the other imported a package named rpc.

R=ken
OCL=35446
CL=35446
2009-10-07 14:55:12 -07:00
Russ Cox
4fd7a908bb do not import testing twice when testing testing.
R=r
DELTA=3  (2 added, 0 deleted, 1 changed)
OCL=35443
CL=35445
2009-10-07 14:52:44 -07:00
Russ Cox
91549438d8 apply gofmt to rand reflect regexp rpc runtime sort strconv strings sync syscall testing time unicode unsafe utf8
R=gri
DELTA=1409  (79 added, 24 deleted, 1306 changed)
OCL=35415
CL=35437
2009-10-07 11:55:06 -07:00
Robert Griesemer
f77b255c38 support for "hard" and "soft" tabs:
- soft-tab separated columns can be discarded if empty and DiscardEmptyColumns is set
- hard-tab separated columns are never discarded

R=rsc
DELTA=63  (42 added, 7 deleted, 14 changed)
OCL=35421
CL=35435
2009-10-07 10:55:45 -07:00
Russ Cox
c2874976e4 factor portable object+library bits out of 5l/6l/8l into ld
R=r
DELTA=3214  (904 added, 2260 deleted, 50 changed)
OCL=35425
CL=35427
2009-10-07 00:11:59 -07:00
Russ Cox
cfdb3a5639 make reader more useful
for lower-level clients:
	* expose p.Skip
	* expose p.Unmarshal
	* wildcard struct field "Any"
	* unmarshal into bool
	* unmarshal into xml.Name
	* unmarshal into pointer

R=r
DELTA=61  (50 added, 5 deleted, 6 changed)
OCL=35372
CL=35422
2009-10-06 22:03:47 -07:00
Russ Cox
c2ec9583a0 apply gofmt to go, gob, hash, http, image, io, json, log
R=gri
DELTA=1359  (138 added, 32 deleted, 1189 changed)
OCL=35408
CL=35420
2009-10-06 19:41:51 -07:00
Russ Cox
2c5ec1ebc0 apply gofmt to malloc math once os
R=gri
DELTA=566  (4 added, 14 deleted, 548 changed)
OCL=35410
CL=35419
2009-10-06 19:40:35 -07:00
Russ Cox
6faacd2244 apply gofmt to auto-generated syscall files
R=gri
DELTA=4023  (104 added, 27 deleted, 3892 changed)
OCL=35416
CL=35418
2009-10-06 19:38:30 -07:00
Kai Backman
a2cf914379 5l library loading, 64 bit entry points
R=rsc
APPROVED=rsc
DELTA=58  (52 added, 3 deleted, 3 changed)
OCL=35417
CL=35417
2009-10-06 19:00:30 -07:00
Kai Backman
116beb2653 - moved 3 functions from syscall_linux to _386 and _amd64 (arm lacks them)
- 64 bit OMINUS
- added bunch of missing arm syscalls

R=rsc
APPROVED=rsc
DELTA=203  (189 added, 3 deleted, 11 changed)
OCL=35412
CL=35414
2009-10-06 16:39:38 -07:00
Russ Cox
13b1d5b1bb fix build - missing from 35404
TBR=gri
OCL=35411
CL=35411
2009-10-06 16:06:34 -07:00
Robert Griesemer
b1fc650666 - set uint type for flags
- simplified some code

R=rsc
DELTA=19  (0 added, 0 deleted, 19 changed)
OCL=35405
CL=35407
2009-10-06 15:44:13 -07:00
Russ Cox
ecb863a9a9 apply gofmt to datafmt, ebnf, exec, expvar, flag, fmt
R=gri
DELTA=456  (6 added, 3 deleted, 447 changed)
OCL=35398
CL=35406
2009-10-06 15:38:57 -07:00
Russ Cox
2c2e2c5d55 more comment work.
got rid of regexps.
primary bug fix is that // inside /* */ do not get stripped anymore,
so that the text inside

/*
int a;
// int b;
int c;
*/

is

int a;
// int b;
int c;

before, the "int b;" line was being uncommented too.

R=gri
DELTA=65  (13 added, 42 deleted, 10 changed)
OCL=35334
CL=35404
2009-10-06 15:28:47 -07:00
Robert Griesemer
dc093494f3 - simplify "needsBlanks" logic for identifiers and strings
TBR=rsc
DELTA=16  (10 added, 4 deleted, 2 changed)
OCL=35379
CL=35403
2009-10-06 15:22:03 -07:00
Robert Griesemer
90193fb67e add IgnoreEmptyColumns feature to tabwriter
R=rsc
DELTA=96  (74 added, 2 deleted, 20 changed)
OCL=35391
CL=35402
2009-10-06 15:10:36 -07:00
Rob Pike
0bf5553538 fix build
R=rsc
DELTA=5  (5 added, 0 deleted, 0 changed)
OCL=35387
CL=35401
2009-10-06 15:08:32 -07:00
Russ Cox
650bff6aa9 another round of gofmt applications
R=gri
DELTA=900  (106 added, 31 deleted, 763 changed)
OCL=35384
CL=35396
2009-10-06 14:55:39 -07:00
Russ Cox
22c98a3314 gofmt on crypto, debug
R=gri
DELTA=2560  (127 added, 177 deleted, 2256 changed)
OCL=35388
CL=35395
2009-10-06 14:55:06 -07:00
Kai Backman
620ec45c5f cleaned up cgen() to be a bit more straightforward.
R=rsc
APPROVED=rsc
DELTA=104  (46 added, 56 deleted, 2 changed)
OCL=35392
CL=35394
2009-10-06 14:48:39 -07:00
Russ Cox
c62b3265a7 apply gofmt to the LGTM-marked files from 34501
that have not changed since I applied gofmt.

R=gri
DELTA=456  (77 added, 3 deleted, 376 changed)
OCL=35378
CL=35383
2009-10-06 11:42:55 -07:00
Adam Langley
9d9a421e24 Change description of time.Time.ZoneOffset to specify east is +ve.
Currently, the description says that +ve numbers are westwards of UTC.
Typically, timezones are specified with +ve numbers running east of Greenwich.
For example, San Francisco is specified as UTC-8. Also, when calling
time.Localtime(), the following is returned on my box in PDT:

{Year:2009 Month:10 Day:5 Hour:18 Minute:55 Second:6 Weekday:1 ZoneOffset:-25200
Zone:PDT}

Note that the ZoneOffset is negative. This leads me to suspect that the
description is mistaken.

R=rsc
APPROVED=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35356
CL=35377
2009-10-06 10:01:39 -07:00
Robert Griesemer
63ef5a4173 change tabwidth to 8 for tests
R=rsc
DELTA=39  (0 added, 0 deleted, 39 changed)
OCL=35360
CL=35376
2009-10-06 09:52:37 -07:00
Kai Backman
5afce0ca85 64 bit cmp and some sgen tweaks
go/test: passes 75% (256/339)

R=rsc
APPROVED=rsc
DELTA=142  (53 added, 4 deleted, 85 changed)
OCL=35367
CL=35375
2009-10-06 09:47:46 -07:00
Kai Backman
d58b5fca45 move cas out, add dummy runcgo.
R=rsc
APPROVED=rsc
DELTA=73  (45 added, 28 deleted, 0 changed)
OCL=35363
CL=35366
2009-10-05 21:52:10 -07:00
Rob Pike
e6bc5bf5af allow multiple -L options
R=rsc
DELTA=31  (15 added, 3 deleted, 13 changed)
OCL=35364
CL=35364
2009-10-05 21:31:50 -07:00
Robert Griesemer
e8210824f6 various go printer fixes:
- better handling of line breaks in expression lists
- fixed line breaks around label decls
- remove ()'s around if, for, switch expressions
- simple index expressions don't require blanks
- better line breaks around declarations of different kind

R=rsc
DELTA=404  (369 added, 8 deleted, 27 changed)
OCL=35354
CL=35359
2009-10-05 19:37:34 -07:00
Robert Griesemer
c915bc54ba remove a file from idempotency test so that the entire suite passes
R=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=35355
CL=35358
2009-10-05 19:32:10 -07:00
Nigel Tao
f2d2e113be First cut at a PNG encoder.
TODOs include filtering, and a unit test.

R=rsc
APPROVED=r
DELTA=280  (249 added, 1 deleted, 30 changed)
OCL=35262
CL=35348
2009-10-05 17:34:15 -07:00
Russ Cox
9006f49130 comment tweaks; implement precise name
character sets.

R=r
DELTA=339  (257 added, 1 deleted, 81 changed)
OCL=35344
CL=35346
2009-10-05 16:45:24 -07:00
Russ Cox
0ddfe70c27 XML parser
R=r
DELTA=546  (545 added, 0 deleted, 1 changed)
OCL=35318
CL=35341
2009-10-05 15:10:00 -07:00
Russ Cox
a91b6b74e3 XML lexing
The lexer is the bottom level.
Most clients will use the Unmarshal method,
not yet implemented, which will behave like
json.Unmarshal.

R=r
DELTA=1115  (766 added, 219 deleted, 130 changed)
OCL=35316
CL=35339
2009-10-05 15:00:50 -07:00
Russ Cox
7d85cebb1c preserve blank lines in // comments
R=gri
DELTA=32  (13 added, 12 deleted, 7 changed)
OCL=35317
CL=35332
2009-10-05 11:24:01 -07:00
Russ Cox
c5b056f24f update json comments
R=r
DELTA=16  (4 added, 2 deleted, 10 changed)
OCL=35320
CL=35331
2009-10-05 11:23:44 -07:00
David Symonds
c17dde2730 Add write support for the GNU tar binary numeric field extension.
R=rsc
APPROVED=rsc
DELTA=102  (89 added, 1 deleted, 12 changed)
OCL=35321
CL=35327
2009-10-05 04:08:24 -07:00
Russ Cox
168777d4af fix build
TBR=r
OCL=35308
CL=35308
2009-10-03 15:02:11 -07:00
Russ Cox
2d72b39fd3 add cgo test that doesn't depend on
non-standard libraries and add to build.

R=r
DELTA=211  (210 added, 0 deleted, 1 changed)
OCL=35293
CL=35307
2009-10-03 11:33:51 -07:00
Bill Neubauer
41a2b21f26 Fixing HTTP POST handling to work with Chrome and Safari.
request.go does not handle Content-Type correctly for the definition of
Media Types.

http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.7

R=rsc
APPROVED=rsc
DELTA=44  (42 added, 0 deleted, 2 changed)
OCL=35274
CL=35306
2009-10-03 11:09:01 -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
133a158bd8 8c, 8l dynamic loading support.
better mach binaries.
cgo working on darwin+linux amd64+386.
eliminated context switches - pi is 30x faster.
add libcgo to build.

on snow leopard:
  - non-cgo binaries work; all tests pass.
  - cgo binaries work on amd64 but not 386.

R=r
DELTA=2031  (1316 added, 626 deleted, 89 changed)
OCL=35264
CL=35304
2009-10-03 10:37:12 -07:00
Russ Cox
f15300beb7 expand error regexp in dns test
R=r
DELTA=3  (0 added, 0 deleted, 3 changed)
OCL=35292
CL=35303
2009-10-03 10:35:49 -07:00
Robert Griesemer
4b3a13d379 - improved handling of white space around declarations and statements
- extra tests

R=rsc
DELTA=366  (264 added, 37 deleted, 65 changed)
OCL=35299
CL=35301
2009-10-02 22:24:05 -07:00
Robert Griesemer
433e05974a - allow parenthesized [...]T types as in: ([...]int){}
- added extra tests

R=rsc
DELTA=55  (37 added, 0 deleted, 18 changed)
OCL=35250
CL=35276
2009-10-02 10:03:25 -07:00
Kai Backman
3e5a817d07 a few more code generation bugs and an interface alignment issue.
go/test: passes 74% (251/339)

R=rsc
APPROVED=rsc
DELTA=40  (34 added, 0 deleted, 6 changed)
OCL=35254
CL=35275
2009-10-02 09:06:51 -07:00
Nigel Tao
032f2d399f Change deflate.go's default compression level from 4 to 6.
R=rsc
APPROVED=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35208
CL=35261
2009-10-01 17:50:16 -07:00
Robert Griesemer
53440da835 Factored out boilerplate from all html docs in doc directory:
- the first HTML comment in those files is extracted as page
  title when serving them
- lib/godoc.html is top-level template for all pages served
- experimented a bit with package documentation layout
  (feedback welcome)
- various related cleanups

TODO:
- The / page (doc/root.html) content repeats links that are
  in the navigation bar. It needs to be cleaned up.

R=rsc
DELTA=826  (86 added, 692 deleted, 48 changed)
OCL=35230
CL=35245
2009-10-01 14:08:00 -07:00
Kai Backman
57f834aeff generate float registers correctly.
go/test: passes 71% (242/339)

R=rsc
APPROVED=rsc
DELTA=9  (5 added, 0 deleted, 4 changed)
OCL=35233
CL=35243
2009-10-01 13:52:55 -07:00
Kai Backman
e5c884f7db some progress on arm linux syscall interface. ztypes_linux_arm
still has problems with godefs.

R=rsc
APPROVED=rsc
DELTA=801  (134 added, 235 deleted, 432 changed)
OCL=35189
CL=35211
2009-10-01 06:55:01 -07:00
Kai Backman
8fd53f4754 cgen_asop sudoaddable
R=rsc
APPROVED=rsc
DELTA=14  (4 added, 0 deleted, 10 changed)
OCL=35190
CL=35210
2009-10-01 06:50:59 -07:00
Kai Backman
a1b4796394 fixed a few calls to gcmp and some really bothched OINDEX code
(how did that happen?)

go/test: passes 70% (238/339)

R=rsc
APPROVED=rsc
DELTA=18  (10 added, 0 deleted, 8 changed)
OCL=35185
CL=35188
2009-09-30 18:56:37 -07:00
Russ Cox
2157025ef0 step toward darwin ffi: factor out macho code
R=r
DELTA=771  (374 added, 287 deleted, 110 changed)
OCL=35187
CL=35187
2009-09-30 17:33:39 -07:00
Kai Backman
399d23d4f4 load binary op arguments into registers
go/test: passes 69% (237/339)

R=rsc
APPROVED=rsc
DELTA=12  (3 added, 9 deleted, 0 changed)
OCL=35178
CL=35180
2009-09-30 14:28:18 -07:00
Russ Cox
e67a5084b8 cgo working on linux/386
R=r
DELTA=70  (47 added, 4 deleted, 19 changed)
OCL=35167
CL=35171
2009-09-30 13:47:15 -07:00
Rob Pike
0632bb4ae5 rename the public exvar package to be expvar.
R=rsc
DELTA=684  (324 added, 324 deleted, 36 changed)
OCL=35161
CL=35163
2009-09-30 13:11:33 -07:00
Russ Cox
cce01111a9 cgo: works on amd64.
integrated into Makefiles (see misc/cgo/gmp/Makefile).

R=r
DELTA=1110  (540 added, 525 deleted, 45 changed)
OCL=35153
CL=35158
2009-09-30 11:51:08 -07:00
Russ Cox
5124e66fca c compiler bug tickled by
void f(struct { int x[1]; } p) { }
the "int" was getting attached to f.

R=ken
OCL=35145
CL=35151
2009-09-30 10:25:22 -07:00
Russ Cox
f2a520f48d clean up error output;
do not print entire buffer on error,
since it can be very large.
instead print identifying string.

R=krasin
DELTA=14  (1 added, 3 deleted, 10 changed)
OCL=35141
CL=35143
2009-09-30 08:59:56 -07:00
Russ Cox
b71c484c91 fix 386 build - register allocation and shift bug
R=ken
OCL=35140
CL=35142
2009-09-30 08:56:01 -07:00
Russ Cox
e7f9452da5 missing error checking related to ([...]int){...}
R=ken
OCL=35132
CL=35132
2009-09-29 21:23:34 -07:00
Russ Cox
08eefec9d6 nacl system call updates
R=r
DELTA=236  (211 added, 18 deleted, 7 changed)
OCL=35084
CL=35131
2009-09-29 21:22:25 -07:00
Russ Cox
6f1698774d undo 35108 (disallow parens around type in struct literal).
allow parens around [...]int in struct literal.

R=ken
OCL=35112
CL=35130
2009-09-29 21:21:14 -07:00
Nigel Tao
c51e184538 ZLIB deflater.
R=rsc
APPROVED=rsc
DELTA=222  (219 added, 0 deleted, 3 changed)
OCL=35031
CL=35129
2009-09-29 19:47:05 -07:00
Kai Backman
187cc1eb49 fix munging of pointer.
go/test: passes 69% (235/339)

R=rsc
APPROVED=rsc
DELTA=5  (4 added, 1 deleted, 0 changed)
OCL=35107
CL=35109
2009-09-29 16:07:59 -07:00
Russ Cox
9c3c140984 disallow parens around type in struct literal syntax,
per discussion with gri.

R=ken
OCL=35108
CL=35108
2009-09-29 16:05:44 -07:00
Ivan Krasin
c59a965133 Deflate encoder
APPROVED=rsc
OCL=34514
CL=35093
2009-09-29 13:16:21 -07:00
Adam Langley
5a69935a3c Add crypto/rc4.
RC4 is a common stream cipher. This adds a pure-go C implementation.

R=r
APPROVED=r
DELTA=139  (138 added, 0 deleted, 1 changed)
OCL=35056
CL=35092
2009-09-29 12:15:24 -07:00
Kai Backman
8ccf8240f4 fixed alignment issue resulting from confusion around the
meaning of out args.

go/test: passes 68% (231/339)

R=rsc
APPROVED=rsc
DELTA=13  (7 added, 0 deleted, 6 changed)
OCL=35072
CL=35080
2009-09-29 07:27:49 -07:00
Kai Backman
24bfaaf07a - added gcmp for proper ACMP generation, changed all call
sites plus optimized constant code a bit (one less register
  used).
- changed conditional branches, might need a re-tweak later
- gave up on agen OINDEX and copied/fixed the version in 8g

go/test: passes 66% (225/339)

R=rsc
APPROVED=rsc
DELTA=148  (67 added, 32 deleted, 49 changed)
OCL=35040
CL=35055
2009-09-28 15:40:13 -07:00
Robert Griesemer
ec10bf8f43 permit only one method name per method signature in interface types
(in sync with spec CL 35047)

R=rsc
DELTA=44  (4 added, 8 deleted, 32 changed)
OCL=35048
CL=35054
2009-09-28 14:54:53 -07:00
Rob Pike
7fed6527e1 might as well make 6g run faster.... go from gcc -O1 to -O2
R=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=35023
CL=35049
2009-09-28 14:36:20 -07:00
Russ Cox
7743ffead4 disallow interface { x, y() }
R=ken
OCL=35042
CL=35044
2009-09-28 14:05:34 -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
Russ Cox
ed6de5af4c comparisons have type bool
R=ken
OCL=34995
CL=34997
2009-09-24 17:55:22 -07:00
Russ Cox
86b119f765 install assembly math.Sqrt on amd64
R=r
DELTA=33  (32 added, 0 deleted, 1 changed)
OCL=34983
CL=34986
2009-09-24 14:27:52 -07:00
Russ Cox
285b6021e9 missing files; cleaned up g4 nothave output.
fixes 386 build.

R=r
DELTA=56  (56 added, 0 deleted, 0 changed)
OCL=34979
CL=34981
2009-09-24 13:38:18 -07:00
Russ Cox
0c71ead9e6 convert 8l to new ELF code.
mostly cut and paste from 6l.

R=r
DELTA=930  (525 added, 182 deleted, 223 changed)
OCL=34976
CL=34976
2009-09-24 12:53:35 -07:00
Russ Cox
5de6096415 allow runes >= 0x80 in symbols in #pragmas
R=ken
OCL=34975
CL=34975
2009-09-24 11:45:08 -07:00
Russ Cox
a4d09c2aa3 add Size method to dwarf.Type
R=r
DELTA=30  (24 added, 3 deleted, 3 changed)
OCL=34950
CL=34974
2009-09-24 11:43:38 -07:00
Russ Cox
12fc217336 cgo checkpoint.
can write all 3 output files and then compile them by hand.

R=r
DELTA=919  (841 added, 16 deleted, 62 changed)
OCL=34954
CL=34973
2009-09-24 11:43:19 -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
Russ Cox
f0964a54fb go/printer: fix sync bug - avoid sending on errors twice -
and report node type in error

R=gri
DELTA=4  (3 added, 0 deleted, 1 changed)
OCL=34949
CL=34955
2009-09-24 01:37:27 -07:00
Rob Pike
fbb7029747 expand ticker interface to allow a client to shut down a ticker.
existing interface still works.

R=rsc
DELTA=50  (32 added, 2 deleted, 16 changed)
OCL=34930
CL=34932
2009-09-23 13:02:14 -07:00
Russ Cox
567673fc42 nacl - run tests under emulator.
special all-nacl.bash and test/run-nacl that
run just the tests known to work under nacl.
the rest requires closures.

fix another bug or two in syscall.

R=r
DELTA=420  (410 added, 8 deleted, 2 changed)
OCL=34882
CL=34907
2009-09-22 16:56:28 -07:00
Russ Cox
1b14bdbf1c changes to accommodate nacl:
* change ldt0setup to set GS itself; nacl won't let us do it.
  * change breakpoint to INT $3 so 8l can translate to HLT for nacl.
  * panic if closure is needed on nacl.
  * do not try to access symbol table on nacl.
  * mmap in 64kB chunks.

nacl support:
  * system calls, threading, locks.

R=r
DELTA=365  (357 added, 5 deleted, 3 changed)
OCL=34880
CL=34906
2009-09-22 16:28:32 -07:00
Rob Pike
9e7f3a46d3 restore the old algorithm. the new one is more memory efficient in large cases
but too slow across the board.

R=rsc
DELTA=315  (50 added, 219 deleted, 46 changed)
OCL=34868
CL=34902
2009-09-22 14:53:48 -07:00
Kai Backman
8ce5f6e14a fix bad code generation.
go/test: passes 64% (215/337) tests

metric updated, had total number of tests wrong. number of
failing tests is down from 129 to 122.

R=rsc
APPROVED=rsc
DELTA=228  (12 added, 5 deleted, 211 changed)
OCL=34897
CL=34899
2009-09-22 13:13:23 -07:00
Russ Cox
f7e43ffa9d nacl syscall: write return values to correct stack location
R=r
DELTA=18  (0 added, 0 deleted, 18 changed)
OCL=34894
CL=34894
2009-09-22 10:34:44 -07:00
Russ Cox
7b850fb7e3 nacl syscall package - machine generated files
R=r
DELTA=515  (515 added, 0 deleted, 0 changed)
OCL=34881
CL=34891
2009-09-22 07:49:49 -07:00
Russ Cox
b428456df6 nacl syscall package.
similar tweaks to make debug/proc, net, os build.

R=r
DELTA=861  (855 added, 4 deleted, 2 changed)
OCL=34877
CL=34890
2009-09-22 07:49:31 -07:00
Russ Cox
586d9d5a19 use $(shell uname) instead of $GOOS when
deciding what the host process support is.
this makes a cross-compiling (e.g., GOOS=nacl) build
still generate valid host debugger binaries.

R=r
DELTA=5  (0 added, 0 deleted, 5 changed)
OCL=34878
CL=34889
2009-09-22 07:48:43 -07:00
Russ Cox
7390aa0102 nacl:
add jmp to constant pc.
	generate HLT for INT $3
	do not insert NOPs between REP/REPN and subsequent instruction.
	allow very long time for convergence.

R=ken
OCL=34879
CL=34879
2009-09-22 01:10:40 -07:00
Ken Thompson
2975308125 more inlining of sliceslice
R=rsc
OCL=34871
CL=34871
2009-09-21 18:23:16 -07:00
Robert Griesemer
681f86a87f improved spacing around if, switch, and for control clauses
R=r
DELTA=89  (82 added, 5 deleted, 2 changed)
OCL=34870
CL=34870
2009-09-21 18:07:20 -07:00
Russ Cox
eae0906bed rewrite RET, indirect CALL, indirect JMP for nacl.
can JMP or CALL indirect through a register R
provided the preceding instruction is AND $~31, R.

R=ken
OCL=34863
CL=34867
2009-09-21 15:48:22 -07:00
Russ Cox
bbcb91a3a7 convert 386 to use %gs instead of %fs for extern register.
required for nacl and may be nicer for ffi,
because %gs is the standard register for thread-local storage.

R=ken
OCL=34861
CL=34866
2009-09-21 15:46:50 -07:00
Russ Cox
a95ee61aea ideal bools and related fixes
R=ken
OCL=34859
CL=34865
2009-09-21 15:45:55 -07:00
Russ Cox
27969e87cf add required conversions; bug in compiler let it slip through
R=r
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=34860
CL=34864
2009-09-21 15:44:10 -07:00
Rob Pike
6efd7e6b8f move strings.Buffer into bytes
delete strings.Buffer
add a test for a bug not caught before (mustn't install zero-length blocks)

R=rsc
DELTA=987  (289 added, 587 deleted, 111 changed)
OCL=34850
CL=34850
2009-09-21 12:59:14 -07:00
Rob Pike
fed4770685 step 2 of the great buffer shift.
make strings.Buffer handle strings and bytes with comparable efficiency.
if ok, next step will be to move this code to bytes.Buffer and terminate
strings.Buffer's short happy life.

R=rsc
DELTA=292  (212 added, 0 deleted, 80 changed)
OCL=34837
CL=34849
2009-09-21 12:20:15 -07:00
Russ Cox
de0d762a0f accept CALL $(constant) to call absolute PC
R=ken
OCL=34845
CL=34845
2009-09-21 09:41:21 -07:00
Nigel Tao
11e313ae72 Unit tests for image/png, based off the semi-official pngsuite from
libpng.org.

R=rsc
APPROVED=r
DELTA=1176  (1175 added, 1 deleted, 0 changed)
OCL=34727
CL=34838
2009-09-20 19:08:03 -07:00
Robert Griesemer
144580d690 - filter trailing whitespace
- removed some unused code

R=rsc
DELTA=103  (84 added, 15 deleted, 4 changed)
OCL=34816
CL=34829
2009-09-19 11:52:40 -07:00
Kai Backman
e4eaf4c24e expanded arm regression testing. will go away once 5g is compliant
R=rsc
APPROVED=rsc
DELTA=300  (297 added, 0 deleted, 3 changed)
OCL=34813
CL=34821
2009-09-18 19:09:29 -07:00
Russ Cox
4a4ec23870 8l: step toward native client.
- ELF header bits and addresses
  - do not let instructions span 32-byte boundary
  - align CALLs so return is to 32-byte boundary
  - align indirect jump targets to 32-byte boundary
    (only possible indirect jumps are function entries)

still to do:
  - replace indirect jump, indirect call, and ret with
    nacl-approved instruction sequences
  - switch to GS segment for m-local storage

R=ken
OCL=34818
CL=34818
2009-09-18 18:57:15 -07:00
Russ Cox
c64986f706 merge first pass into main loop in span calculation.
having one copy will cut nacl changes in half.

R=ken
OCL=34815
CL=34815
2009-09-18 17:08:18 -07:00
Kai Backman
46e392e01c changed 5c calling convention to use stack exclusively for in
params. a number of fixes to assembly routines that assumed R0
had the first arg. one stack offset fix, arm pushes the link
register on stack top.

go/test: passes 65% (235/364) tests

R=rsc
APPROVED=rsc
DELTA=20  (11 added, 0 deleted, 9 changed)
OCL=34809
CL=34812
2009-09-18 16:45:41 -07:00
Russ Cox
2e5a588718 fix build again; this time for sure. sigh
TBR=r
OCL=34803
CL=34803
2009-09-18 12:56:18 -07:00
Kai Backman
2c7ec3d861 fix 5g -S and -g output
R=rsc
APPROVED=rsc
DELTA=115  (93 added, 14 deleted, 8 changed)
OCL=34798
CL=34802
2009-09-18 12:47:44 -07:00
Kai Backman
020dbcd4df revert setting of name from type. already set correctly.
R=rsc
APPROVED=rsc
DELTA=1  (0 added, 1 deleted, 0 changed)
OCL=34799
CL=34801
2009-09-18 12:47:25 -07:00
Russ Cox
99f54911cd fix build - missing file
TBR=r
OCL=34800
CL=34800
2009-09-18 12:45:34 -07:00
Russ Cox
6a2602de91 cgo: can look up C identifier kind (type or value) and type
gmp.go:197:4:  type mpz_t          C type  mpz_t
gmp.go:205:2:  call mpz_init       C value func(mpz_ptr) void
gmp.go:206:2:  call mpz_set        C value func(mpz_ptr, mpz_srcptr) void
gmp.go:221:2:  call mpz_init       C value func(mpz_ptr) void
gmp.go:227:7:  call size_t         C type  size_t
gmp.go:228:2:  call mpz_export     C value func(*void, *size_t, int, size_t, int, size_t, mpz_srcptr) *void
gmp.go:235:13: call mpz_sizeinbase C value func(mpz_srcptr, int) size_t
gmp.go:241:2:  call mpz_set        C value func(mpz_ptr, mpz_srcptr) void
gmp.go:252:3:  call mpz_import     C value func(mpz_ptr, size_t, int, size_t, int, size_t, *const void) void
gmp.go:261:2:  call mpz_set_si     C value func(mpz_ptr, long int) void
gmp.go:273:5:  call mpz_set_str    C value func(mpz_ptr, *const char, int) int
gmp.go:282:9:  call mpz_get_str    C value func(*char, int, mpz_srcptr) *char
gmp.go:287:3:  call mpz_clear      C value func(mpz_ptr) void
gmp.go:302:2:  call mpz_add        C value func(mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:311:2:  call mpz_sub        C value func(mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:320:2:  call mpz_mul        C value func(mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:329:2:  call mpz_tdiv_q     C value func(mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:339:2:  call mpz_tdiv_r     C value func(mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:348:2:  call mpz_mul_2exp   C value func(mpz_ptr, mpz_srcptr, long unsigned int) void
gmp.go:356:2:  call mpz_div_2exp   C value func(mpz_ptr, mpz_srcptr, long unsigned int) void
gmp.go:367:3:  call mpz_pow_ui     C value func(mpz_ptr, mpz_srcptr, long unsigned int) void
gmp.go:369:3:  call mpz_powm       C value func(mpz_ptr, mpz_srcptr, mpz_srcptr, mpz_srcptr) void
gmp.go:378:2:  call mpz_neg        C value func(mpz_ptr, mpz_srcptr) void
gmp.go:386:2:  call mpz_abs        C value func(mpz_ptr, mpz_srcptr) void
gmp.go:404:9:  call mpz_cmp        C value func(mpz_srcptr, mpz_srcptr) int
gmp.go:413:2:  call mpz_tdiv_qr    C value func(mpz_ptr, mpz_ptr, mpz_srcptr, mpz_srcptr) void
gmp.go:426:2:  call mpz_gcdext     C value func(mpz_ptr, mpz_ptr, mpz_ptr, mpz_srcptr, mpz_srcptr) void

R=r
DELTA=938  (628 added, 308 deleted, 2 changed)
OCL=34733
CL=34791
2009-09-18 11:52:00 -07:00
Russ Cox
92f773dc77 add DWARF method to elf.File.
test both ELF and Mach-O in dwarf package.

R=r
DELTA=83  (44 added, 10 deleted, 29 changed)
OCL=34717
CL=34790
2009-09-18 11:50:24 -07:00
Russ Cox
bf69025825 Mach-O file reading
R=r
DELTA=784  (784 added, 0 deleted, 0 changed)
OCL=34715
CL=34788
2009-09-18 11:49:22 -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
Rob Pike
7be770071f use buf.String() instead of string(buf.Bytes())
use strings.Buffer instead of bytes.Buffer in some places

R=rsc
DELTA=40  (0 added, 3 deleted, 37 changed)
OCL=34770
CL=34775
2009-09-17 23:51:06 -07:00
Kai Backman
a0a965fbcf fixing width bug in DATA output. some logging to make fixing
similar issues easier in the future.

R=rsc
APPROVED=rsc
DELTA=6  (1 added, 0 deleted, 5 changed)
OCL=34771
CL=34773
2009-09-17 23:08:15 -07:00
Kai Backman
6b0bd43fe4 fix code generation of CMP to use registers properly. also fix
one case of uninitialized memory and some output.

R=rsc
APPROVED=rsc
DELTA=73  (43 added, 1 deleted, 29 changed)
OCL=34743
CL=34772
2009-09-17 23:07:52 -07:00
Kai Backman
803a73c431 floating point constants and symbol export fix.
R=rsc
APPROVED=rsc
DELTA=16  (0 added, 1 deleted, 15 changed)
OCL=34753
CL=34769
2009-09-17 19:24:07 -07:00
Russ Cox
cb49a999d1 move static init code from 6g into gc.
hook up to 8g and 5g too.

R=ken
OCL=34768
CL=34768
2009-09-17 19:15:54 -07:00
Russ Cox
73e52ae971 check for unused imports
R=ken
OCL=34732
CL=34756
2009-09-17 16:42:10 -07:00
Robert Griesemer
2a01b9d46e - improved formatting of declarations
- improved formatting of struct and interface types

R=rsc
DELTA=471  (364 added, 47 deleted, 60 changed)
OCL=34747
CL=34751
2009-09-17 15:20:15 -07:00
Russ Cox
20011bc878 unused imports
R=r
OCL=34731
CL=34731
2009-09-17 10:27:04 -07:00
Robert Griesemer
1401151ab2 - don't add "..." anonymous field to structs/interfaces if entries are stripped
- don't print any optional semicolons after declarations inside functions
- indicate non-exported fields/methods in exported types with a comment
  so that the "exported source" is legal Go code
- more tests

R=rsc
DELTA=300  (227 added, 25 deleted, 48 changed)
OCL=34697
CL=34730
2009-09-17 09:12:14 -07:00
Robert Griesemer
75f72e7b2e fix build: updated Make.deps
TBR=r
OCL=34729
CL=34729
2009-09-17 09:08:24 -07:00
Rob Pike
229e976163 first cut at a string buffer.
can be made more efficient but this is reasonable.

R=rsc
DELTA=363  (363 added, 0 deleted, 0 changed)
OCL=34720
CL=34720
2009-09-16 23:32:17 -07:00
Russ Cox
0b7878a96e first step toward cgo tool.
can extract import "C" doc comment
and all references to C package.

; cgo gmp.go | sort
#include <gmp.h>
gmp.go:197:4: mpz_t as type
gmp.go:205:2: mpz_init as call
gmp.go:206:2: mpz_set as call
gmp.go:221:2: mpz_init as call
gmp.go:227:7: size_t as call
gmp.go:228:2: mpz_export as call
gmp.go:235:13: mpz_sizeinbase as call
gmp.go:241:2: mpz_set as call
gmp.go:252:3: mpz_import as call
gmp.go:261:2: mpz_set_si as call
gmp.go:273:5: mpz_set_str as call
gmp.go:282:9: mpz_get_str as call
gmp.go:287:3: mpz_clear as call
gmp.go:302:2: mpz_add as call
gmp.go:311:2: mpz_sub as call
gmp.go:320:2: mpz_mul as call
gmp.go:329:2: mpz_tdiv_q as call
gmp.go:339:2: mpz_tdiv_r as call
gmp.go:348:2: mpz_mul_2exp as call
gmp.go:356:2: mpz_div_2exp as call
gmp.go:367:3: mpz_pow as call
gmp.go:369:3: mpz_powm as call
gmp.go:378:2: mpz_neg as call
gmp.go:386:2: mpz_abs as call
gmp.go:404:9: mpz_cmp as call
gmp.go:413:2: mpz_tdiv_qr as call
gmp.go:426:2: mpz_gcdext as call
;

R=r
DELTA=746  (746 added, 0 deleted, 0 changed)
OCL=34710
CL=34714
2009-09-16 18:14:18 -07:00
Russ Cox
11df49c43f publish doc.CommentText
R=gri
DELTA=29  (10 added, 12 deleted, 7 changed)
OCL=34709
CL=34712
2009-09-16 16:56:20 -07:00
Russ Cox
127368d220 make String work on Position values, to enable
fmt.Printf("%s: %s\n", expr.Pos(), message);

R=gri
DELTA=15  (1 added, 3 deleted, 11 changed)
OCL=34706
CL=34708
2009-09-16 16:38:49 -07:00
Rob Pike
d5be41fc4e rename bytes.Buffer.Data() to bytes.Buffer.Bytes()
R=rsc
DELTA=152  (6 added, 0 deleted, 146 changed)
OCL=34695
CL=34701
2009-09-16 15:15:00 -07:00
Rob Pike
2a1c9377d9 use /bin/ed to avoid portability issues
R=rsc
DELTA=1  (0 added, 0 deleted, 1 changed)
OCL=34696
CL=34700
2009-09-16 15:14:12 -07:00
Russ Cox
0ee18ca816 add heap.Remove
R=gri
DELTA=14  (14 added, 0 deleted, 0 changed)
OCL=34636
CL=34687
2009-09-16 10:43:49 -07:00
Russ Cox
1bbc044df9 parse and present DWARF type information
R=r
DELTA=940  (929 added, 1 deleted, 10 changed)
OCL=34679
CL=34686
2009-09-16 10:43:27 -07:00
Russ Cox
f249c4114c basic DWARF reading.
R=r
DELTA=949  (949 added, 0 deleted, 0 changed)
OCL=34676
CL=34678
2009-09-15 21:58:45 -07:00
Russ Cox
aaaa1fc69b make 6g match spec:
no semicolon allowd after package clause.
	semicolon allowed after import statement.
	no doubled semicolons allowed

R=ken
OCL=34674
CL=34674
2009-09-15 17:29:08 -07:00
Robert Griesemer
4459624f04 bug fix: allow function types as operands
R=rsc
DELTA=10  (5 added, 0 deleted, 5 changed)
OCL=34662
CL=34666
2009-09-15 16:16:34 -07:00
Kai Backman
bcfc6e631f fixed register usage and removed some dead code.
R=rsc
APPROVED=rsc
DELTA=17  (0 added, 12 deleted, 5 changed)
OCL=34659
CL=34665
2009-09-15 16:15:17 -07:00