aboutsummaryrefslogtreecommitdiff
path: root/src/comp
Commit message (Collapse)AuthorAgeFilesLines
...
* rustc: Intern all types. 4s regression.Patrick Walton2011-05-111-17/+1
|
* rustc: Hoist derived type descriptors to the top of the functionPatrick Walton2011-05-111-69/+120
|
* Remove mod indices from the ASTMarijn Haverbeke2011-05-116-202/+165
| | | | | They are now created by the resolve pass, which is the only pass that needs them, and kept internal to that pass.
* Get rid of arm indicesMarijn Haverbeke2011-05-116-36/+26
|
* Get rid of block indicesMarijn Haverbeke2011-05-116-116/+62
|
* Stop depending on block indices in capture.rsMarijn Haverbeke2011-05-111-5/+9
|
* Hash only on def_num when storing def_ids that are localMarijn Haverbeke2011-05-111-13/+14
|
* Use a const for crate-num-zero (ast.local_crate)Marijn Haverbeke2011-05-113-4/+4
|
* Cache external crate lookups in resolve.rsMarijn Haverbeke2011-05-111-6/+28
| | | | | | According to --time-passes, resolution went from 2 to 0 seconds. Not really the bottleneck... but if we want to be crazy fast, just consider this a future bottleneck that was fixed very timely.
* Rewrite comp/middle/resolve.rsMarijn Haverbeke2011-05-118-655/+556
| | | | | | | | | * Cleans up the algorithm * Move first pass to walk (second still folds) * Support part of a type/value namespace split (crate metadata and module indices still need to be taught about this) * Remove a few blatant inefficiencies (import tables being recreated for every lookup, most importantly)
* More alias-ification of trans.Graydon Hoare2011-05-111-279/+285
|
* Add meta info to rustc.rcBrian Anderson2011-05-101-0/+6
|
* rustc: Don't interleave allocas with stores when copying arguments to allocasPatrick Walton2011-05-101-11/+7
|
* Begin alias-ifying trans.Graydon Hoare2011-05-101-82/+82
|
* Avoid mangle_name_by_type_only call in tydesc names unless debugging.Graydon Hoare2011-05-101-1/+8
|
* rustc: Lower the size limit on ty_to_short_str() and always call it in favor ↵Patrick Walton2011-05-102-2/+2
| | | | of direct calls to metadata.Encode.ty_str() in trans
* rustc: Make -g not take an argumentPatrick Walton2011-05-101-1/+1
|
* rustc: Number everything with an annotationPatrick Walton2011-05-109-175/+193
|
* Only name LLVM values / blocks / types when saving temporaries.Graydon Hoare2011-05-101-17/+27
|
* Add --time-llvm-passes.Graydon Hoare2011-05-104-4/+26
|
* rustc: Cache intermediate results of metadata.Encode.ty_str. Shaves 30% off ↵Patrick Walton2011-05-103-3/+22
| | | | translation time.
* Switch memcpy to memmove since we're willing to compile x = x and such.Graydon Hoare2011-05-101-18/+17
|
* rustc: Get rid of native Rust glue for all upcalls except the exit task gluePatrick Walton2011-05-102-133/+114
|
* Re-enable use of llvm intrinsics for memcpy, memset. Should have aligned ↵Graydon Hoare2011-05-101-106/+77
| | | | stack now.
* Fix long lines in fold.rs, typeck.rsBrian Anderson2011-05-092-2/+4
|
* Alias-ify fold and its users, remove another 85kb.Graydon Hoare2011-05-096-357/+378
|
* rustc: Give our upcall definitions the right valuesPatrick Walton2011-05-091-40/+50
|
* Alias-ify walk, typeck, metadata. Cuts another 80kb off rustc.Graydon Hoare2011-05-096-150/+153
|
* rustc: Declare upcalls with real signatures; preparation for killing ↵Patrick Walton2011-05-093-0/+151
| | | | rust_native_rust_* stubs
* Remove boxes from token.t.Graydon Hoare2011-05-093-42/+79
|
* rustc: Alias fix part 2 -- Check that the aliasness of function parameters ↵Patrick Walton2011-05-092-10/+11
| | | | matches. Add a test case.
* Alias-ify a variety of fn signatures in ty. Cuts 180kb off rustc.Graydon Hoare2011-05-091-112/+114
|
* rustc: Alias fix part 1 -- Separate out AST modes from typechecker modes, ↵Patrick Walton2011-05-096-71/+63
| | | | and introduce an "either value or alias" mode
* rustc: Replace our homebrew list of passes with the standard function and ↵Patrick Walton2011-05-092-51/+21
| | | | module passes, along with the TargetData passes.
* rustc: Stop emitting zero-length arraysPatrick Walton2011-05-081-14/+42
|
* Stop stringifying integers to get integral constants.Graydon Hoare2011-05-072-32/+37
|
* rustc: Make llvm_err() conform to Postel's law a little betterPatrick Walton2011-05-061-1/+6
|
* Fix GenericOS.getenv returning a raw str, return an Option.t[str] instead.Graydon Hoare2011-05-061-2/+11
|
* rustc: Uncomment LLVMAddStandardPasses, now that we have a native glue that ↵Patrick Walton2011-05-061-2/+2
| | | | supports 8 arguments.
* Rename std modules to be camelcasedMarijn Haverbeke2011-05-0627-1321/+1321
| | | | (Have fun mergining your stuff with this.)
* rustc: Bump the number of native glues to 8Patrick Walton2011-05-061-1/+1
|
* rustllvm: Add a binding to the LLVM standard module passesPatrick Walton2011-05-061-0/+10
|
* rustc: For stack local derived tydescs, allocate the root tydesc separately ↵Patrick Walton2011-05-061-24/+36
| | | | from the parameter tydescs. This allows SROA, and consequently inlining, to work.
* rustc: Factor derived tydesc construction out of get_tydesc()Patrick Walton2011-05-061-43/+44
|
* rustc: Include a representation of the type in question in the symbols ↵Patrick Walton2011-05-061-1/+1
| | | | generated for tydescs
* Ge the host triple using LLVM. Fix a few 'mutable' warnings also.Kelly Wilson2011-05-062-8/+29
|
* Use #env to bake a git revision string into rustc's --version output.Graydon Hoare2011-05-061-4/+5
|
* rustc: Remove some debugging code from decl_native_fn_and_pair()Patrick Walton2011-05-051-6/+0
|
* rustc: Fix a bunch of argument-passing bugs in decl_native_fn_and_pair()Patrick Walton2011-05-051-54/+82
|
* Fix x86.rs triple for linux.Graydon Hoare2011-05-051-1/+1
|