| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Use new module namespace syntax. | Lindsey Kuper | 2011-05-13 | 1 | -1/+1 |
| | | |||||
| * | More progress on anonymous objects. | Lindsey Kuper | 2011-05-13 | 1 | -3/+7 |
| | | | | | Still segfaulting on the method-overriding.rs test, though. | ||||
| * | rustc: lowercase the link and link::write modules | Brian Anderson | 2011-05-13 | 1 | -2/+2 |
| | | |||||
| * | Move capture checking into resolve.rs | Marijn Haverbeke | 2011-05-13 | 1 | -3/+0 |
| | | | | | | Drops capture.rs. The new algorithm also checks for captures function arguments and obj fields. | ||||
| * | rustc: Flatten recursive vectors in trans::simplify_type(). Prevents an ↵ | Patrick Walton | 2011-05-12 | 1 | -0/+3 |
| | | | | | infinite loop. | ||||
| * | rustc: Pass a node type table around, unused as of yet | Patrick Walton | 2011-05-12 | 1 | -38/+66 |
| | | |||||
| * | Add stats option and lazily emit glue. | Graydon Hoare | 2011-05-12 | 1 | -86/+264 |
| | | |||||
| * | Downcase std modules again, move to :: for module dereferencing | Marijn Haverbeke | 2011-05-12 | 1 | -1432/+1443 |
| | | | | | This should be a snapshot transition. | ||||
| * | Change module dereference syntax from . to :: | Marijn Haverbeke | 2011-05-12 | 1 | -1/+1 |
| | | | | | This will need to be a snapshot. | ||||
| * | Keep resolve data in external hash table, rather than embedded defs | Marijn Haverbeke | 2011-05-12 | 1 | -104/+102 |
| | | | | | | | | | | | | | | One step closer to removing fold and having a single, immutable AST. Resolve still uses fold, because it has to detect and transform expr_field expressions. If we go through on our plan of moving to a different syntax for module dereferencing, the parser can spit out expr_field expressions, and resolve can move to walk. (I am truly sorry for the things I did in typestate_check.rs. I expect we'll want to change that to walk as well in the near future, at which point it should probably pass around a context record, which could hold the def_map.) | ||||
| * | Ensure ann tags are actually kept around during typechecking | Marijn Haverbeke | 2011-05-12 | 1 | -2/+2 |
| | | | | | | | This way, the tag assigned by the parser stays with the node. I realize ann replacing is probably going away real soon, but I needed this now for moving the resolve defs out of the AST. | ||||
| * | Provide a more useful message when failing to translate a const | Marijn Haverbeke | 2011-05-12 | 1 | -0/+3 |
| | | |||||
| * | rustc: Hoist derived type descriptors to the top of the function | Patrick Walton | 2011-05-11 | 1 | -69/+120 |
| | | |||||
| * | Rewrite comp/middle/resolve.rs | Marijn Haverbeke | 2011-05-11 | 1 | -0/+3 |
| | | | | | | | | | | * 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 Hoare | 2011-05-11 | 1 | -279/+285 |
| | | |||||
| * | rustc: Don't interleave allocas with stores when copying arguments to allocas | Patrick Walton | 2011-05-10 | 1 | -11/+7 |
| | | |||||
| * | Begin alias-ifying trans. | Graydon Hoare | 2011-05-10 | 1 | -82/+82 |
| | | |||||
| * | Avoid mangle_name_by_type_only call in tydesc names unless debugging. | Graydon Hoare | 2011-05-10 | 1 | -1/+8 |
| | | |||||
| * | rustc: Lower the size limit on ty_to_short_str() and always call it in favor ↵ | Patrick Walton | 2011-05-10 | 1 | -1/+1 |
| | | | | | of direct calls to metadata.Encode.ty_str() in trans | ||||
| * | rustc: Number everything with an annotation | Patrick Walton | 2011-05-10 | 1 | -2/+2 |
| | | |||||
| * | Only name LLVM values / blocks / types when saving temporaries. | Graydon Hoare | 2011-05-10 | 1 | -17/+27 |
| | | |||||
| * | rustc: Cache intermediate results of metadata.Encode.ty_str. Shaves 30% off ↵ | Patrick Walton | 2011-05-10 | 1 | -0/+4 |
| | | | | | translation time. | ||||
| * | Switch memcpy to memmove since we're willing to compile x = x and such. | Graydon Hoare | 2011-05-10 | 1 | -18/+17 |
| | | |||||
| * | rustc: Get rid of native Rust glue for all upcalls except the exit task glue | Patrick Walton | 2011-05-10 | 1 | -124/+105 |
| | | |||||
| * | Re-enable use of llvm intrinsics for memcpy, memset. Should have aligned ↵ | Graydon Hoare | 2011-05-10 | 1 | -106/+77 |
| | | | | | stack now. | ||||
| * | Alias-ify walk, typeck, metadata. Cuts another 80kb off rustc. | Graydon Hoare | 2011-05-09 | 1 | -9/+9 |
| | | |||||
| * | rustc: Declare upcalls with real signatures; preparation for killing ↵ | Patrick Walton | 2011-05-09 | 1 | -0/+25 |
| | | | | | rust_native_rust_* stubs | ||||
| * | rustc: Alias fix part 1 -- Separate out AST modes from typechecker modes, ↵ | Patrick Walton | 2011-05-09 | 1 | -21/+19 |
| | | | | | and introduce an "either value or alias" mode | ||||
| * | rustc: Stop emitting zero-length arrays | Patrick Walton | 2011-05-08 | 1 | -14/+42 |
| | | |||||
| * | Stop stringifying integers to get integral constants. | Graydon Hoare | 2011-05-07 | 1 | -32/+33 |
| | | |||||
| * | Rename std modules to be camelcased | Marijn Haverbeke | 2011-05-06 | 1 | -201/+201 |
| | | | | | (Have fun mergining your stuff with this.) | ||||
| * | rustc: For stack local derived tydescs, allocate the root tydesc separately ↵ | Patrick Walton | 2011-05-06 | 1 | -24/+36 |
| | | | | | from the parameter tydescs. This allows SROA, and consequently inlining, to work. | ||||
| * | rustc: Factor derived tydesc construction out of get_tydesc() | Patrick Walton | 2011-05-06 | 1 | -43/+44 |
| | | |||||
| * | rustc: Include a representation of the type in question in the symbols ↵ | Patrick Walton | 2011-05-06 | 1 | -1/+1 |
| | | | | | generated for tydescs | ||||
| * | rustc: Remove some debugging code from decl_native_fn_and_pair() | Patrick Walton | 2011-05-05 | 1 | -6/+0 |
| | | |||||
| * | rustc: Fix a bunch of argument-passing bugs in decl_native_fn_and_pair() | Patrick Walton | 2011-05-05 | 1 | -54/+82 |
| | | |||||
| * | Consolidating expr_to_str functions. | Lindsey Kuper | 2011-05-05 | 1 | -4/+1 |
| | | |||||
| * | Change the setup so that rust_activate_glue returns to rust_exit_task_glue | Rafael Ávila de Espíndola | 2011-05-05 | 1 | -16/+17 |
| | | | | | | | | | | | | and rust_exit_task_glue calls the rust main. This is simpler since we only need to setup one frame. It also matches what ld.so does, so gdb is happy and stops a backtrace at rust_exit_task_glue instead of continuing past whatever function happened to be before rust_exit_task_glue is the object file. This is only the rustc changes and should be merged first. | ||||
| * | Return a fresh, unreachable context after ret, break, and cont | Marijn Haverbeke | 2011-05-05 | 1 | -2/+2 |
| | | | | | | | | | | This ensures we don't get compile errors on unreachable code (see test/run-pass/artificial-block.rs for an example of sane code that wasn't compiling). In the future, we might want to warn about non-trivial code appearing in an unreachable context, and/or avoid generating unreachable code altogether (though I'm sure LLVM will weed it out as well). | ||||
| * | rustc: Add a Link module; move crate writing to it to slim down trans slightly | Patrick Walton | 2011-05-05 | 1 | -158/+4 |
| | | |||||
| * | Fix and re-enable destructors | Marijn Haverbeke | 2011-05-05 | 1 | -6/+7 |
| | | | | | | | | There was some confusion on whether the destructors took their argument by pointer or direct value. They now take it directly, just like other methods. You no longer get a segfault when a constructor actually does something with its self value. | ||||
| * | Add a structure for passing option flags around the compiler, put it in ↵ | Graydon Hoare | 2011-05-04 | 1 | -23/+19 |
| | | | | | session, and use it. | ||||
| * | Support new -g flag, only mangle glue names by type when it's passed. | Graydon Hoare | 2011-05-04 | 1 | -8/+16 |
| | | |||||
| * | rustc: Stub support for Rust intrinsics | Patrick Walton | 2011-05-03 | 1 | -28/+55 |
| | | |||||
| * | rustc: Refactor metadata.Encode.* to not require a type abbreviation table ↵ | Patrick Walton | 2011-05-03 | 1 | -7/+3 |
| | | | | | if abbreviation isn't enabled | ||||
| * | rustc: Name type glue properly | Patrick Walton | 2011-05-03 | 1 | -3/+17 |
| | | |||||
| * | rustc: Time the Rust translation and LLVM passes separately | Patrick Walton | 2011-05-02 | 1 | -3/+3 |
| | | |||||
| * | Un-revert "Use different syntax for checks that matter to typestate", fixing ↵ | Patrick Walton | 2011-05-02 | 1 | -34/+38 |
| | | | | | | | the problem. This reverts commit d08b443fffb1181d8d45ae5d061412f202dd4118. | ||||
| * | Revert "Use different syntax for checks that matter to typestate" | Graydon Hoare | 2011-05-02 | 1 | -38/+34 |
| | | | | | This reverts commit aa25f22f197682de3b18fc4c8ba068d1feda220f. It broke stage2, not sure why yet. | ||||
| * | rustc: Allocate tydescs on the stack when it's safe to do so. 60% compile ↵ | Patrick Walton | 2011-05-02 | 1 | -12/+33 |
| | | | | | speed increase. | ||||