aboutsummaryrefslogtreecommitdiff
path: root/src/comp
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* Consolidating expr_to_str functions.Lindsey Kuper2011-05-055-22/+8
|
* Use symbolic register names so that we get the correct encoding on OS X.Rafael Ávila de Espíndola2011-05-051-2/+2
|
* Change the setup so that rust_activate_glue returns to rust_exit_task_glueRafael Ávila de Espíndola2011-05-051-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.
* rustc: Add Rust intrinsic support to the crate metadata reader and writerPatrick Walton2011-05-052-3/+7
|
* rustc: Fix bug in equal_abi that was preventing Rust intrinsics from workingPatrick Walton2011-05-051-0/+6
|
* Add --help, --version and -v flags (not yet supporting GIT_REV env var, ↵Graydon Hoare2011-05-051-4/+23
| | | | waiting on snapshot).
* rustc: Link with intrinsics.bc; change intrinsics linkage to linkonce_odrPatrick Walton2011-05-052-2/+28
|
* rustc: Add a binding to LLVM's bitcode parserPatrick Walton2011-05-052-0/+9
|
* Enforce in typechecker that preds return a boolTim Chevalier2011-05-051-0/+11
| | | | as well as a test case
* Bring back "pred" syntax for writing predicates for checkTim Chevalier2011-05-057-22/+155
| | | | | | | | | | This commit reinstates the requirement that the predicate in a "check" must be a manifest call to a special kind of function declared with the new "pred" keyword instead of "fn". Preds must have a boolean return type and can only call other preds; they can't have any effects (as enforced by the typechecker). The arguments to a predicate in a check expression must be slot variables or literals.
* Check well-formedness of constraintsTim Chevalier2011-05-052-6/+37
| | | | | | Check that the operand in a constraint is an explicit name, and that the operands are all local variables or literals. Still need to check that the name refers to a pure function.
* Check that the operand in a check is a callTim Chevalier2011-05-052-8/+19
| | | | | | In addition, fix bug in fold that was turning asserts into checks. More typechecking still needs to be done.
* Remove 'deprecated mutable...' from our codeMarijn Haverbeke2011-05-054-14/+14
| | | | This should make compilation a bit less noisy.
* Return a fresh, unreachable context after ret, break, and contMarijn Haverbeke2011-05-051-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).
* Eradicate fold from capture.rsMarijn Haverbeke2011-05-051-59/+54
| | | | The pass now uses walk.
* rustc: Add a Link module; move crate writing to it to slim down trans slightlyPatrick Walton2011-05-055-173/+197
|
* rustllvm: Add bindings to the LLVM linkerPatrick Walton2011-05-041-1/+3
|
* rustc: Detect the system root and allow the user to override if necessaryPatrick Walton2011-05-042-4/+22
|
* Add #env syntax extension for plucking strings out of the compilation ↵Graydon Hoare2011-05-043-0/+76
| | | | environment.
* Fix and re-enable destructorsMarijn Haverbeke2011-05-051-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 Hoare2011-05-045-87/+106
| | | | session, and use it.
* Add missing ret statements to check_modBrian Anderson2011-05-041-0/+4
| | | | Un-XFAIL compile-fail export tests
* Support new -g flag, only mangle glue names by type when it's passed.Graydon Hoare2011-05-042-18/+30
|
* rustc: Stub support for Rust intrinsicsPatrick Walton2011-05-034-28/+61
|
* Revert "Rename the "llvm" API to "llvm-intrinsic"" due to tinderbox bustagePatrick Walton2011-05-032-2/+1
| | | | This reverts commit 6871c245a67fab222eccc2a21dcb620d11d3b0d0.
* Start sketching --depend support in rustc.Graydon Hoare2011-05-033-1/+19
|
* Rename the "llvm" API to "llvm-intrinsic"Patrick Walton2011-05-032-1/+2
|
* rustc: Refactor metadata.Encode.* to not require a type abbreviation table ↵Patrick Walton2011-05-033-45/+53
| | | | if abbreviation isn't enabled
* rustc: Name type glue properlyPatrick Walton2011-05-031-3/+17
|
* Extract ast.is_exported from the resolve moduleBrian Anderson2011-05-022-18/+23
|
* rustc: Time the Rust translation and LLVM passes separatelyPatrick Walton2011-05-022-6/+11
|
* rustc: Remove the artificial block in ty.rs. Fixes self-hosting. Add a test ↵Patrick Walton2011-05-021-1/+1
| | | | case for this, XFAIL'd.
* Un-revert "Use different syntax for checks that matter to typestate", fixing ↵Patrick Walton2011-05-0216-505/+510
| | | | | | the problem. This reverts commit d08b443fffb1181d8d45ae5d061412f202dd4118.
* Revert "Use different syntax for checks that matter to typestate"Graydon Hoare2011-05-0216-510/+505
| | | | This reverts commit aa25f22f197682de3b18fc4c8ba068d1feda220f. It broke stage2, not sure why yet.