Russ Cox
34514bdb72
Use a single Make.conf for setting CC, etc.
...
This makes it easy to build with other flags
(like -ggdb) or other compilers (like cc64).
R=r
DELTA=45 (6 added, 22 deleted, 17 changed)
OCL=13790
CL=13793
2008-08-03 23:03:31 -07:00
Ken Thompson
989676d2ba
add 'export' adjectives to external
...
var, const and type declarations.
R=r
DELTA=49 (12 added, 28 deleted, 9 changed)
OCL=13791
CL=13791
2008-08-03 18:47:02 -07:00
Russ Cox
9aad9fef76
make 6a, 6c, 6g, 6l, libmach_amd64 build on 64-bit gcc.
...
these guys really really want long to be 32-bits,
so ,s/long/int32/ (and then manual fixup).
still passes all tests.
(i started out looking for just those longs that
needed to be int32 instead, and it was just too hard
to track them down one by one.)
the longs were rare enough that i don't think
it will cause integration problems.
R=ken
OCL=13787
CL=13789
2008-08-03 17:25:15 -07:00
Ken Thompson
851100683e
6c delete .6 file on error
...
R=r
DELTA=1 (1 added, 0 deleted, 0 changed)
OCL=13785
CL=13785
2008-08-03 13:31:06 -07:00
Ken Thompson
7889e03477
go method
...
R=r
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=13765
CL=13765
2008-08-02 15:31:21 -07:00
Ken Thompson
b2d9020242
len now takes an expression
...
R=r
DELTA=1 (0 added, 0 deleted, 1 changed)
OCL=13523
CL=13523
2008-07-28 13:54:58 -07:00
Ken Thompson
b1abcc195d
random bug fixes
...
R=r
DELTA=18 (6 added, 1 deleted, 11 changed)
OCL=13504
CL=13504
2008-07-27 13:09:15 -07:00
Ken Thompson
bd397d2f9b
select
...
R=r
DELTA=29 (27 added, 1 deleted, 1 changed)
OCL=13503
CL=13503
2008-07-27 11:42:52 -07:00
Rob Pike
20a02661d9
beginnings of a low-level syscall library
...
R=ken
OCL=13483
CL=13496
2008-07-26 14:49:21 -07:00
Ken Thompson
120827284e
select/chan
...
R=r
DELTA=517 (137 added, 98 deleted, 282 changed)
OCL=13495
CL=13495
2008-07-26 14:21:21 -07:00
Ken Thompson
949ab5c7ff
select
...
R=r
APPROVED=r
DELTA=41 (24 added, 13 deleted, 4 changed)
OCL=13480
CL=13480
2008-07-25 17:03:27 -07:00
Ken Thompson
e963cba8a1
select
...
R=r
APPROVED=r
DELTA=147 (94 added, 14 deleted, 39 changed)
OCL=13477
CL=13477
2008-07-25 15:55:12 -07:00
Ken Thompson
ece3e57c85
read select
...
R=r
APPROVED=r
DELTA=120 (108 added, 0 deleted, 12 changed)
OCL=13468
CL=13468
2008-07-25 11:58:26 -07:00
Ken Thompson
cb9b1038db
select
...
R=r
APPROVED=r
DELTA=638 (433 added, 21 deleted, 184 changed)
OCL=13426
CL=13438
2008-07-24 15:57:30 -07:00
Rob Pike
35b7a174e6
maintain __.PKGDEF files in archives if the 'g' flag is given
...
use this facility to simplify the math lib-building script
R=ken
DELTA=183 (158 added, 16 deleted, 9 changed)
OCL=13364
CL=13366
2008-07-22 15:57:46 -07:00
Rob Pike
05caa7f820
help management of empty pkg and lib directories in perforce
...
R=gri
DELTA=4 (4 added, 0 deleted, 0 changed)
OCL=13328
CL=13328
2008-07-21 17:10:49 -07:00
Ken Thompson
b78676a49d
start of select
...
random bugs fixed
SVN=128149
2008-07-20 20:13:07 -07:00
Ken Thompson
963753d3f9
tweaks to init
...
rand using init
SVN=128142
2008-07-20 13:33:45 -07:00
Ken Thompson
f24f8ffae0
init
...
SVN=128128
2008-07-19 18:39:12 -07:00
Rob Pike
acf3d59847
update fmt to use some initialization
...
tweak ar so the pkgdef file doesn't cause it not to generate a symbol table
SVN=128119
2008-07-19 14:52:01 -07:00
Ken Thompson
90da636c15
init filename vs pkgname
...
SVN=128117
2008-07-19 14:20:46 -07:00
Ken Thompson
fb3af53f4e
initialization
...
SVN=128115
2008-07-19 13:38:29 -07:00
Ken Thompson
4c5a165873
len(fixed array)
...
SVN=128050
2008-07-18 11:59:35 -07:00
Ken Thompson
0ca551fc36
loop in subtype
...
SVN=127933
2008-07-17 18:15:05 -07:00
Ken Thompson
41861ca7bb
one more time for divide
...
SVN=127911
2008-07-17 16:22:40 -07:00
Ken Thompson
9e2d185040
div bug
...
[]ptr bug
proc reuses old g* structures
differnt assignment of offsets to parameters
SVN=127888
2008-07-17 15:03:39 -07:00
Ken Thompson
814320c8b4
parameter in fn literals
...
SVN=127695
2008-07-16 18:31:01 -07:00
Ken Thompson
8003849498
parameter declartions in func literals
...
SVN=127678
2008-07-16 17:22:54 -07:00
Ken Thompson
44b8934d35
back out last chan fix
...
allow print of pointers
SVN=127548
2008-07-16 12:44:21 -07:00
Ken Thompson
ac048ce7f4
new chan syntax
...
SVN=127437
2008-07-15 21:07:59 -07:00
Rob Pike
c870ac239e
add sys.writefile; support for darwin only in this CL
...
SVN=127153
2008-07-14 20:54:55 -07:00
Rob Pike
e9a194382e
disambiguate error message
...
SVN=127152
2008-07-14 20:54:16 -07:00
Ken Thompson
c6e8e1cebf
go call fn address
...
SVN=127151
2008-07-14 20:40:48 -07:00
Ken Thompson
2d9ff40774
chan asynch
...
SVN=127121
2008-07-14 17:41:38 -07:00
Ken Thompson
f7e2bb55ae
chan
...
SVN=126960
2008-07-13 16:22:50 -07:00
Ken Thompson
97cab903af
chan
...
SVN=126959
2008-07-13 16:20:27 -07:00
Ken Thompson
594175d0b5
chan
...
SVN=126958
2008-07-13 14:29:46 -07:00
Ken Thompson
3f982aeaf6
morestack magic number
...
automatically generated in 6g and 6c,
manually set in 6a. format is
TEXT a(SB),, $a-b
where a is auto size and b is parameter size
SVN=126946
2008-07-12 17:16:22 -07:00
Ken Thompson
3856e45e03
more on channels
...
arg space magic number for morestack
SVN=126936
2008-07-12 13:08:53 -07:00
Ken Thompson
751ce3a77a
segmented stacks AND goroutines
...
SVN=126929
2008-07-11 19:16:39 -07:00
Ken Thompson
2d7eecbbf4
bug in offsets in imported struct fields
...
SVN=126591
2008-07-09 17:15:10 -07:00
Rob Pike
d5f4d94b80
redefinition fix for autolib: if first ATEXT is already defined, skip this file
...
SVN=126580
2008-07-09 16:40:11 -07:00
Rob Pike
12c81a0ce8
enable autolib
...
handle archives with __.PKGDEF elements (although we can't create them yet)
introduce a pkg directory
search the pkg directory for packages during compilation
SVN=126574
2008-07-09 16:05:03 -07:00
Rob Pike
41b9617be4
fix ldexp, frexp, and make math package compile and test correctly
...
SVN=126423
2008-07-08 17:26:10 -07:00
Ken Thompson
4528854308
unique import/export names
...
more on go statement
SVN=126421
2008-07-08 17:19:17 -07:00
Rob Pike
655c281303
disambiguate typedefs in export blocks of .6 files
...
SVN=126366
2008-07-08 14:20:04 -07:00
Rob Pike
6db99de606
add bytestorune and stringtorune to sys.
...
SVN=126321
2008-07-08 10:36:43 -07:00
Ken Thompson
1d31a25d83
more coroutine
...
fixed a,b,c := x,x,x
SVN=126250
2008-07-07 17:59:32 -07:00
Ken Thompson
0d079a5362
start of coroutine
...
SVN=126152
2008-07-07 12:29:26 -07:00
Ken Thompson
caa7193c95
took out vlong/uvlong/rune conversions
...
SVN=126053
2008-07-06 11:20:44 -07:00
Ken Thompson
4d6d4e7f4e
random little bugs
...
SVN=126049
2008-07-05 17:43:25 -07:00
Ken Thompson
417a971f9a
output args declared
...
arguments in first block for diagnostics
thomo return
better syntax error recovery
SVN=126045
2008-07-05 12:49:25 -07:00
Ken Thompson
1efa6a0544
better recovery after syntax error
...
SVN=126003
2008-07-03 18:05:20 -07:00
Ken Thompson
81b325db1b
a,b := fun()
...
SVN=125998
2008-07-03 17:41:05 -07:00
Ken Thompson
d915b96100
new iota
...
SVN=125984
2008-07-03 16:41:32 -07:00
Rob Pike
03febb6773
clean up rearrangement of runtime functions in the source
...
add isNaN, isInf, NaN, Inf
SVN=125389
2008-06-30 15:30:47 -07:00
Ken Thompson
b987f7a757
segmented stacks
...
SVN=125267
2008-06-29 20:40:08 -07:00
Ken Thompson
d3237f9a2a
more line numbers
...
SVN=125265
2008-06-28 17:27:39 -07:00
Ken Thompson
dc1602ca23
more line numbers
...
SVN=125261
2008-06-28 13:58:00 -07:00
Ken Thompson
ca029d34b6
another both sides functions
...
SVN=125230
2008-06-27 17:53:23 -07:00
Ken Thompson
57d80398e6
line numbers
...
SVN=125228
2008-06-27 17:35:42 -07:00
Ken Thompson
390d5fe5b2
fixed fncall both sides
...
SVN=125217
2008-06-27 16:59:14 -07:00
Ken Thompson
102fcc6689
sametype message
...
SVN=125216
2008-06-27 16:43:02 -07:00
Ken Thompson
73f85f8a53
map index of index bug
...
SVN=125213
2008-06-27 16:30:20 -07:00
Rob Pike
34cb7c299e
export sys.exit
...
update tests to use exit rather than return
ignore return value from main (actually done in prior CL)
SVN=125173
2008-06-27 14:15:06 -07:00
Ken Thompson
1f6828bcdf
segmented stack
...
SVN=125151
2008-06-27 13:03:19 -07:00
Rob Pike
1f672596c5
fix a few spelling mistakes in messages
...
SVN=125108
2008-06-27 10:29:02 -07:00
Ken Thompson
75937c2a16
better line numbers
...
SVN=125018
2008-06-26 17:54:44 -07:00
Rob Pike
3e4e83ab1e
add sys.readfile()
...
add args to linux runtime
SVN=124961
2008-06-26 14:09:26 -07:00
Rob Pike
9ff0e6288e
runtime needs runtime.c
...
6l needs to know that there is no rt_amd64.6
SVN=124766
2008-06-25 21:31:17 -07:00
Rob Pike
41abdad5ec
maybe now $O is right
...
SVN=124764
2008-06-25 21:24:14 -07:00
Rob Pike
5132d10305
O=6 not O=o
...
SVN=124763
2008-06-25 21:23:14 -07:00
Rob Pike
c87597de2c
put a makefile into runtime
...
make the runtime library an archive (rt0 is still separate)
update 6l to use the archive
add fakeobj.c, missing from prior change
SVN=124762
2008-06-25 21:19:05 -07:00
Rob Pike
250a091922
add plan 9 ar, which understands our symbol tables
...
SVN=124761
2008-06-25 20:58:35 -07:00
Ken Thompson
e90ae879d6
autolib (#pragma lib)
...
added to 6g to autoload
the included import files.
SVN=124759
2008-06-25 20:22:10 -07:00
Ken Thompson
1a3f944530
simul assignment
...
SVN=124591
2008-06-25 11:35:06 -07:00
Ken Thompson
10296166a5
bug in returning a fat function result
...
SVN=124436
2008-06-24 18:14:32 -07:00
Ken Thompson
7d11924c13
middle dot as alpha package separator
...
SVN=124419
2008-06-24 17:16:06 -07:00
Rob Pike
2987c8434b
arguments available
...
argc, argv, envc, envv all in sys now
sys.argc() etc.
SVN=124398
2008-06-24 15:31:03 -07:00
Ken Thompson
87dae02a63
string nil same as string ""
...
SVN=124381
2008-06-24 14:11:20 -07:00
Ken Thompson
90846cd447
map[int] bug
...
SVN=124332
2008-06-24 11:10:47 -07:00
Ken Thompson
78c8dec944
bug miscalculating ullman
...
in CALLMETH/DOTMETH
SVN=124321
2008-06-24 10:30:33 -07:00
Ken Thompson
dee07c884e
maps
...
SVN=124030
2008-06-22 21:02:06 -07:00
Rob Pike
aeb43984ec
add signal handling and traceback support therein.
...
factor the runtime into architecture-dependent and -independent pieces.
ditto for the OS dependence.
SVN=124020
2008-06-21 15:36:23 -07:00
Ken Thompson
54abac678a
redeclarations of variables in the same block.
...
half-step toward multivalued map indexing
SVN=124019
2008-06-21 15:11:29 -07:00
Ken Thompson
ddba96aed8
stack offset
...
SVN=123521
2008-06-18 22:07:09 -07:00
Ken Thompson
f997bc6eb6
stack offseet table marker
...
tacked above each TEXT entry
SVN=123496
2008-06-18 17:51:56 -07:00
Ken Thompson
1926fef175
bogus diagnostic with
...
default as first case
in a switch
SVN=123398
2008-06-18 11:43:50 -07:00
Ken Thompson
c242b53d22
more maps
...
more semi-colons
type assignment of constants
SVN=123278
2008-06-17 22:33:32 -07:00
Ken Thompson
c5bb50c9dc
assign nil to interface
...
SVN=123256
2008-06-17 18:07:40 -07:00
Ken Thompson
7131bf476c
SVN=123250
2008-06-17 18:02:06 -07:00
Ken Thompson
504aa698f7
SVN=123249
2008-06-17 18:01:05 -07:00
Ken Thompson
53ec6500bc
yata
...
SVN=123246
2008-06-17 17:59:06 -07:00
Ken Thompson
0006c83231
optional semi-colons
...
SVN=123245
2008-06-17 17:57:31 -07:00
Ken Thompson
4e8142c929
maps
...
SVN=123089
2008-06-16 22:34:50 -07:00
Ken Thompson
3f2d542817
added and, or, xor opcodes
...
SVN=123031
2008-06-16 17:04:39 -07:00
Ken Thompson
e1a06ccc80
now checks for lvalue/rvalue context of
...
expressions.
start of generics for calling builtin
functions
start of map type
'any' demoted from reserved word to type
SVN=122808
2008-06-15 20:24:30 -07:00
Rob Pike
073486c3ed
add support for debugging in MACH binaries
...
fix up libmach_amd64 to handle MACH binaries and symbols
db now works on mac and linux
SVN=122807
2008-06-15 17:22:57 -07:00
Ken Thompson
efec14bc5a
plan9 line numbers and line table
...
SVN=122793
2008-06-13 18:16:23 -07:00
Rob Pike
e9c9c9ace5
add symbol tables and line/pc information to 6.outs
...
SVN=122699
2008-06-13 12:54:21 -07:00
Ken Thompson
343f5aa7b4
better import/export
...
SVN=122584
2008-06-12 21:48:56 -07:00
Rob Pike
67e141b637
Bug fix. Without rounding, .shstrtab is written on top of data segment
...
SVN=122567
2008-06-12 18:51:06 -07:00
Rob Pike
ed5e39a66d
Add 6db
...
SVN=122505
2008-06-12 14:50:25 -07:00
Ken Thompson
ef61a4cb1e
better version of op=
...
fixed bugs in /= and %/
SVN=122493
2008-06-12 14:21:09 -07:00
Rob Pike
e2e6b7e4cc
remove reference to 9ar
...
SVN=122487
2008-06-12 13:38:54 -07:00
Rob Pike
24dbd2413b
remove reference to 9ar
...
SVN=122486
2008-06-12 13:37:54 -07:00
Rob Pike
69b74c3953
import the plan 9 libraries libc (lib9) and libbio into the tree.
...
remove the dependency on /home/r.
SVN=122482
2008-06-12 13:26:16 -07:00
Ken Thompson
2254a8ee99
import/export
...
SVN=122309
2008-06-11 21:06:26 -07:00
Rob Pike
2694a85a52
tweaks in clean rules and dependencies
...
SVN=122274
2008-06-11 18:01:45 -07:00
Rob Pike
461d1b7987
convert from mk to make
...
phew.
SVN=122266
2008-06-11 17:50:07 -07:00
Rob Pike
32aa0d9198
generated file; needs updating
...
SVN=122179
2008-06-11 14:03:52 -07:00
Rob Pike
820368a19a
fix up mkfiles to use $GOROOT instead of $PLAN9
...
mention in setup doc that binaries go into $HOME/bin
SVN=122177
2008-06-11 13:59:55 -07:00
Rob Pike
df28e14e5b
add a setup document, and tweak the scripts that it mentions
...
SVN=122175
2008-06-11 13:34:08 -07:00
Ken Thompson
2bba3a610d
reorder1 - function first instead of last
...
SVN=122160
2008-06-11 12:25:44 -07:00
Ken Thompson
0b3093f0a5
debugging to get fmt to run
...
SVN=122046
2008-06-10 21:29:57 -07:00
Ken Thompson
36f21e00f5
mode elf tossing
...
SVN=121962
2008-06-10 12:42:37 -07:00
Ken Thompson
6a659ebf13
new elf header
...
SVN=121737
2008-06-09 13:16:50 -07:00
Ken Thompson
f9c58c25e0
more nihan
...
SVN=121622
2008-06-08 19:02:27 -07:00
Ken Thompson
9abf9e8a37
nihon
...
SVN=121620
2008-06-08 18:26:23 -07:00
Ken Thompson
b6eca3534c
bug in len
...
SVN=121618
2008-06-08 17:46:28 -07:00
Ken Thompson
610644a1ca
asdf
...
SVN=121615
2008-06-08 17:21:46 -07:00
Rob Pike
27d95f1372
use /bin/ed to avoid compatibility issues with plan 9 ed
...
SVN=121611
2008-06-08 17:02:01 -07:00
Ken Thompson
36bfd2a906
floating point
...
SVN=121607
2008-06-08 16:11:14 -07:00
Ken Thompson
8200a0b088
optional semicolons
...
SVN=121604
2008-06-08 12:48:37 -07:00
Ken Thompson
f7753f1687
more code generation - mostly shift and multiply
...
SVN=121585
2008-06-07 15:21:02 -07:00
Ken Thompson
181ad4743c
more div/mod
...
SVN=121577
2008-06-06 21:21:54 -07:00
Ken Thompson
d83b994da6
div and mod operators
...
SVN=121576
2008-06-06 20:43:29 -07:00
Ken Thompson
feb1c77f9c
cafebabe
...
SVN=121574
2008-06-06 19:16:18 -07:00
Ken Thompson
b6218e6907
'\Ucafebabe'
...
SVN=121562
2008-06-06 17:42:03 -07:00
Ken Thompson
609cf0c3a7
fixed \\ secape in strings
...
SVN=121553
2008-06-06 17:08:21 -07:00
Ken Thompson
a93099cd8c
SVN=121547
2008-06-06 17:01:33 -07:00
Ken Thompson
6b8bd3556a
nonaddressable = functioncall
...
code gen error
SVN=121541
2008-06-06 16:49:35 -07:00
Ken Thompson
d1493d1edc
checked into both gc and runtime by mistake
...
SVN=121498
2008-06-06 15:01:50 -07:00
Ken Thompson
498ed50061
code gen bug calling i2s
...
SVN=121497
2008-06-06 15:01:02 -07:00
Ken Thompson
e372be9e76
code gen bug in ++ and --
...
SVN=121476
2008-06-06 13:54:59 -07:00
Ken Thompson
bbb2073223
goos garch
...
SVN=121367
2008-06-05 19:38:39 -07:00
Ken Thompson
8527f49e24
goos and goarch
...
SVN=121349
2008-06-05 16:57:26 -07:00
Ken Thompson
e2c3ec3173
goos goarch
...
SVN=121348
2008-06-05 16:56:23 -07:00
Ken Thompson
f4ccabdea6
stuff
...
SVN=121190
2008-06-04 16:44:48 -07:00
Ken Thompson
f1880579ef
loaded problem getting main from a library
...
SVN=121175
2008-06-04 15:33:59 -07:00
Ken Thompson
6633be6a86
fix loader problem loading main from a library
...
SVN=121174
2008-06-04 15:32:47 -07:00
Ken Thompson
3adcf6fa0e
touch to make later modified date
...
SVN=121172
2008-06-04 15:08:59 -07:00
Rob Pike
0cafb9ea3d
Add compiler source to new directory structure
...
SVN=121164
2008-06-04 14:37:38 -07:00