aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Teach the LLVM backend to emit line number information.Jeffrey Yasskin2010-07-201-27/+87
| | | | | | This isn't complete: it misses line numbers in certain kinds of block. It's also still tricky to use it on Darwin, where we need to call dsymutil while the .o file is still around in order for gdb to find the debugging symbols.
* Improve the LLVM-using experience.Jeffrey Yasskin2010-07-201-3/+4
| | | | | | | llvm-config may be installed somewhere that's not on the path or in ocaml's default lib directory, so allow users to override $CFG_LLVM_CONFIG with an environment variable and look up lib and binary paths through calls to llvm-config.
* Stub an interface to the (as-yet-nonexistent) structural comparison glue in ↵Patrick Walton2010-07-182-24/+99
| | | | trans
* Fix argv.rs under the LLVM compiler.Jeffrey Yasskin2010-07-183-10/+9
| | | | | | The call to rust_start was assuming that all rust main() functions have the same signature, but the compiler doesn't actually canonicalize them. So instead just match the C signature of rust_start, and cast.
* Fix the LLVM ocamlopt build.Jeffrey Yasskin2010-07-181-2/+2
|
* Work around auto-dereference crash in rustboot.Jeffrey Yasskin2010-07-182-2/+1
|
* Add incomplete hashmap implementation to stdlib.Roy Frostig2010-07-162-0/+169
|
* Fix IL translation of pattern-alt to allow a value of mutable/constrained ↵Roy Frostig2010-07-162-6/+7
| | | | type to be the subject of a pattern-alt.
* Ensure that functions that should return a value do; issue 41Patrick Walton2010-07-166-6/+45
|
* Un-XFAIL a couple tests fixed by pcwalton's new typechecker. Closes #50. ↵Graydon Hoare2010-07-161-2/+0
| | | | Closes #51.
* Un-XFAIL generic-fn-twice.rs, issue 93Patrick Walton2010-07-161-1/+0
|
* Feed the correct return type to the typechecker when typechecking objects, ↵Patrick Walton2010-07-163-14/+41
| | | | and add a testcase.
* XFAIL foreach-nested.rs and foreach-nested-2.rs under LLVMPatrick Walton2010-07-161-0/+2
|
* More renaming of GEP offsets in abi/trans. This should settle it. Also, ↵Roy Frostig2010-07-162-26/+37
| | | | fix some overenthusiastic renaming in previous commit.
* Clean up nomenclature in the Abi constants brigade. Purge magic GEP numbers ↵Roy Frostig2010-07-167-75/+118
| | | | in trans. Adjust obj_closure_rty (and its consumers) to be more explicit about the fact that it is a box.
* Merge branch 'contrib'Graydon Hoare2010-07-153-21/+94
|\
| * Support nested for-each loops. Closes #79.Jason Orendorff2010-07-163-21/+94
| |
* | Fix a couple fails with wrong arg count (new arg from last gc change); ↵Graydon Hoare2010-07-151-3/+5
| | | | | | | | expand vec_grow logging a bit.
* | XFAIL the new destructor tests; collided with new typechecker; add test for ↵Graydon Hoare2010-07-152-0/+15
| | | | | | | | issue #109.
* | Implement the "simple typechecker", which avoids HM inferencePatrick Walton2010-07-157-1553/+854
| |
* | Remove log-type-error; everything is loggable.Patrick Walton2010-07-151-6/+0
|/
* XFAIL jyasskin's new tests under LLVM backend.Graydon Hoare2010-07-151-0/+2
|
* More destruction ordering tests.Jeffrey Yasskin2010-07-161-2/+52
|
* Initial test that the compiler runs destructors in the right order.Jeffrey Yasskin2010-07-161-0/+29
|
* Add a _vec.slice function that'll hold us over until .(a,b) syntax isJeffrey Yasskin2010-07-162-1/+27
| | | | | implemented. This could actually replace .(a,b) syntax if the language grows optional function parameters.
* Add a test for std._vec.init_elt, and an XFAILed test for std._vec.init_fn.Jeffrey Yasskin2010-07-161-0/+30
|
* Let the compiler find libraries that aren't in the current directory.Jeffrey Yasskin2010-07-161-1/+2
|
* Remove the __PAGEZERO segment from shared MachO libraries. This avoids aJeffrey Yasskin2010-07-161-10/+14
| | | | segfault in dlclose() and fixes the tests on OSX 10.5.8.
* In Mach-O shared libraries, avoid counting an extra load command. Closes #99.Jeffrey Yasskin2010-07-161-1/+7
|
* Merge branch 'master' of [email protected]:graydon/rustGraydon Hoare2010-07-152-3/+7
|\
| * Define (in Abi) and use named constants for indices of elements of an obj IL ↵Roy Frostig2010-07-152-3/+7
| | | | | | | | referent type.
* | XFAIL use-import-export.rs on the LLVM backend.Graydon Hoare2010-07-151-0/+1
| |
* | Merge branch 'contrib'Graydon Hoare2010-07-152-87/+106
|\ \ | |/ |/|
| * use,import,export parse fixesAdam Bozanich2010-07-161-73/+87
| | | | | | | | | | * use,import,export must come before all other items. * disallow use,import in "native" declarations.
| * permit use before import. closes #48Adam Bozanich2010-07-162-36/+41
| |
* | Make mutability no longer a type constructorPatrick Walton2010-07-1511-75/+105
| |
* | Correct the way we get typarams when dropping an obj type in drop_ty by ↵Roy Frostig2010-07-151-5/+3
| | | | | | | | using get_tydesc_params.
* | Modify copy_fn_args not to bother with dynamic GEP to get the indirect args ↵Roy Frostig2010-07-151-4/+3
| | | | | | | | cell in a calltup. It's now possible to obtain it with just regular GEP.
* | Explicitly provide an optional closure/obj pointer to trans_call_glue so ↵Roy Frostig2010-07-151-38/+81
| | | | | | | | that it can push one in the right position when calling glue, instead of always pushing a null. As far as I can tell this only affects calls to obj drop glue, since only that makes use of an object binding passed as closure/obj, so pass the binding there as needed.
* | Make the x86 backend push an extra word as closure/obj arg when emitting any ↵Roy Frostig2010-07-152-3/+5
| | | | | | | | code that amounts to a glue or native call.
* | Add another null byte preceding commandline args passed to the root task, in ↵Roy Frostig2010-07-151-1/+1
| | | | | | | | position of closure/obj pointer.
* | Adjust trans_call_glue to push/pop an extra null word implicit arg, in ↵Roy Frostig2010-07-151-0/+2
| | | | | | | | position of closure/obj pointer.
* | Adjust call args laid out by fake frame created in rust_task::start to ↵Roy Frostig2010-07-151-0/+3
| | | | | | | | reflect new position of closure-or-obj pointer.
* | Begin moving closure-or-obj pointer out to front of call args by changing ↵Roy Frostig2010-07-153-8/+9
| | | | | | | | the order within the call-arg tup referent type. This breaks the world quite a bit, since it remains to fix custom call paths: glue, upcalls, natives.
* | Make the call args referent type always have a closure word (non-optional, ↵Roy Frostig2010-07-151-5/+4
| | | | | | | | null in case of no closure) in preparation for shifting it inward from its current position at end-of-call-tup.
* | Minimize pointless logging during walk.Graydon Hoare2010-07-1412-98/+129
| |
* | Fix support for profiling the compiler.Graydon Hoare2010-07-141-4/+6
| |
* | Sketch some not-quite-compiling code into comp/fe/lexer.rs.Graydon Hoare2010-07-141-0/+20
| |
* | Fix ret/put mis-identification in typechecker. Closes #87.Graydon Hoare2010-07-142-6/+48
| |
* | Fix LLVM-detection logic to notice when we have, or don't have, the ocaml ↵Graydon Hoare2010-07-131-6/+6
| | | | | | | | bindings. Also XFAIL missed new case. Closes #102.