Graydon Hoare
|
b258060a94
|
Avoid type_store hashtable access for a variety of cases, probably only ty_var matters.
|
2011-04-25 09:49:08 -07:00 |
|
Graydon Hoare
|
485399a8d5
|
Skip substitution and/or binding when there's no work to do.
|
2011-04-25 05:39:18 +00:00 |
|
Graydon Hoare
|
1b9e6b3ad2
|
Bind tag members as aliases rather than new locals.
|
2011-04-25 04:12:40 +00:00 |
|
Graydon Hoare
|
5fe21b5af0
|
Skip likely-zero initial probe, speed up map.rs.
|
2011-04-25 04:12:33 +00:00 |
|
Graydon Hoare
|
0cffc58225
|
Fix LD_LIBRARY_PATH on STAGE0, STAGE1 defs; define STAGE2.
|
2011-04-24 00:29:19 -07:00 |
|
Graydon Hoare
|
9eec7e3b15
|
Expansion of rules to cover stage1, stage2 in more cases. Fix typo in makefile.
|
2011-04-24 06:06:29 +00:00 |
|
Graydon Hoare
|
912c1fc81c
|
Fix busted iter/put code. Un-XFAIL foreach-box-drop.rs.
|
2011-04-23 14:22:10 -07:00 |
|
Patrick Walton
|
2b298fa3e8
|
rustc: Use a silly "magic numbers" hack; seems to speed things up a bit.
|
2011-04-22 19:52:30 -07:00 |
|
Patrick Walton
|
94e5ca4df8
|
rustc: Include the cname in the hash to increase entropy
|
2011-04-22 19:26:00 -07:00 |
|
Patrick Walton
|
e0eccaddb2
|
rustc: Thread the type store through everything that needs to access type structures
|
2011-04-22 17:00:46 -07:00 |
|
Patrick Walton
|
3d62c9adf3
|
rustc: Move the type serialization logic to an Encode module
|
2011-04-22 14:48:25 -07:00 |
|
Patrick Walton
|
14d1c53a9c
|
rustc: Remove direct access to the cname field of types
|
2011-04-22 13:45:21 -07:00 |
|
Patrick Walton
|
c7473c8260
|
rustc: Switch @ty.t to ty.t so that we can change it to a uint
|
2011-04-22 12:27:52 -07:00 |
|
Rafael Ávila de Espíndola
|
fac8cc3b06
|
Use -c in the Makefiles.
|
2011-04-22 15:15:52 -04:00 |
|
Patrick Walton
|
c1335510d5
|
rustc: Eliminate the direct use of ty.t.struct
|
2011-04-22 12:09:09 -07:00 |
|
Rafael Ávila de Espíndola
|
9eb1479746
|
Dispose the module.
Thanks to brson for noticing it.
|
2011-04-22 14:49:02 -04:00 |
|
Patrick Walton
|
106f783b33
|
rustc: Add a fast path when the types to be unified are exactly equal
|
2011-04-22 10:51:32 -07:00 |
|
Patrick Walton
|
9edaa7dba3
|
rustc: Add a fast path if there are no type substitutions to be made
|
2011-04-22 10:37:51 -07:00 |
|
Patrick Walton
|
9ab9bd9cc2
|
rustc: Improve the efficiency of lookup_item_type() slightly
|
2011-04-22 10:19:57 -07:00 |
|
Marijn Haverbeke
|
2361b65526
|
Switch to binary search in codemap.lookup_pos
Patrick observed excessive slowness when looking up positions
in rustc. This might help.
|
2011-04-22 12:11:00 +02:00 |
|
Graydon Hoare
|
d3eb3b42aa
|
Minimize calls to hash function in map.rs
|
2011-04-22 01:06:20 -07:00 |
|
Patrick Walton
|
117aff8688
|
rustc: Intern types
|
2011-04-21 19:31:13 -07:00 |
|
Graydon Hoare
|
3b047bad6e
|
New minimal test for current stage2 blocker.
|
2011-04-22 02:07:41 +00:00 |
|
Brian Anderson
|
540344acb9
|
Fix the signature of expr_ext
The extension body is just a string, not an expression.
|
2011-04-21 20:42:26 -04:00 |
|
Patrick Walton
|
c78b73b71d
|
test: Un-XFAIL drop-parametric-closure-with-bound-box.rs, oops.
|
2011-04-21 17:36:10 -07:00 |
|
Patrick Walton
|
11c359962e
|
test: XFAIL lib-box on stage0. Upstream LLVM doesn't have the library reading patch yet.
|
2011-04-21 17:35:25 -07:00 |
|
Patrick Walton
|
5e7336ec0d
|
rustc: Add a shallow type equality function, not used yet
|
2011-04-21 17:06:01 -07:00 |
|
Patrick Walton
|
735435bf96
|
stdlib: Add a pointer equality function to the standard library and a test case
|
2011-04-21 16:44:17 -07:00 |
|
Patrick Walton
|
5dbf554bb3
|
rustc: Pass a type store around, which does nothing yet
|
2011-04-21 14:30:27 -07:00 |
|
Patrick Walton
|
3dbfc9310a
|
rustc: Make the parser never assign any types, not even ty_nil
|
2011-04-21 13:00:06 -07:00 |
|
Patrick Walton
|
4d5fad696a
|
rustc: Get rid of boring_ann(); it duplicates plain_ann()
|
2011-04-21 12:51:46 -07:00 |
|
Patrick Walton
|
ef0fcdd630
|
rustc: Create a unification context
|
2011-04-21 12:10:53 -07:00 |
|
Patrick Walton
|
f4b89f5d79
|
rustc: Move ty.unify to a separate namespace
|
2011-04-21 11:46:31 -07:00 |
|
Graydon Hoare
|
186717fae0
|
Fix link commands for stage1 and stage2.
|
2011-04-21 06:07:10 +00:00 |
|
Graydon Hoare
|
4509e6fd70
|
Change ty.eq_ty to avoid stringification.
|
2011-04-21 05:31:00 +00:00 |
|
Patrick Walton
|
1ee96891a0
|
rustc: Create an item collection context during typechecking; move collection to a module
|
2011-04-20 17:59:33 -07:00 |
|
Graydon Hoare
|
c0d98cec45
|
Fix walk bug that coupled with marijns work to regress stage1.
|
2011-04-20 22:52:33 +00:00 |
|
Patrick Walton
|
bc50a3ba44
|
rustc: Add a type unification cache
|
2011-04-20 15:26:55 -07:00 |
|
Patrick Walton
|
7596fcfba7
|
rustc: Define type hashing inductively
|
2011-04-20 14:34:17 -07:00 |
|
Patrick Walton
|
276a0f2de8
|
rustc: Precompute type hashes
|
2011-04-20 12:22:28 -07:00 |
|
Patrick Walton
|
cac7524c1a
|
rustc: Remove all manual type construction outside ty.rs
|
2011-04-20 11:59:10 -07:00 |
|
Patrick Walton
|
38e842244c
|
rustc: Remove all uses of plain_ty() and friends from outside of ty.rs
|
2011-04-20 11:23:36 -07:00 |
|
Patrick Walton
|
ac62488bb1
|
rustc: Introduce preferred type constructors, which will eventually precompute hashes and intern
|
2011-04-20 10:51:41 -07:00 |
|
Marijn Haverbeke
|
c49735d7c4
|
Remove last uses of fold from trans.rs
|
2011-04-20 17:43:37 +02:00 |
|
Graydon Hoare
|
c470cd2d66
|
Fix stage1 Makefile rules.
|
2011-04-20 15:24:04 +00:00 |
|
Marijn Haverbeke
|
757f1520d7
|
Change trans.collect_items to use walk, not fold
|
2011-04-20 17:23:45 +02:00 |
|
Marijn Haverbeke
|
4fe339d5ef
|
Change collect_upvars from using fold to using walk
|
2011-04-20 12:35:34 +02:00 |
|
Marijn Haverbeke
|
fc6fbc1ed0
|
Integrate walk.rs
|
2011-04-20 12:35:07 +02:00 |
|
Graydon Hoare
|
9034a8fbd6
|
Fix #335, log context needs to be a scope to capture cleanups.
|
2011-04-20 04:55:55 +00:00 |
|
Graydon Hoare
|
2e6711fca5
|
Small fast-path hack to ty.hash_ty and eq_ty.
|
2011-04-19 18:46:54 -07:00 |
|