about summary refs log tree commit diff
path: root/src/comp/back
AgeCommit message (Collapse)AuthorLines
2011-05-16Rewrite everything to use [] instead of vec() in value position.Graydon Hoare-81/+81
2011-05-16Replace --bitcode with the canonical --emit-llvmKelly Wilson-3/+3
2011-05-16Add automatic exe generation capabilities. Add --bitcode flag to generate ↵Kelly Wilson-22/+40
only an LLVM bitcode file.
2011-05-14rustc: Dispose intrinsics memory bufferBrian Anderson-0/+2
2011-05-14rustc: Dispose the intrinsics LLVMModuleRefBrian Anderson-1/+4
2011-05-13rustc: lowercase the link and link::write modulesBrian Anderson-1/+1
2011-05-12Downcase std modules again, move to :: for module dereferencingMarijn Haverbeke-114/+114
This should be a snapshot transition.
2011-05-10Add --time-llvm-passes.Graydon Hoare-2/+14
2011-05-10rustc: Get rid of native Rust glue for all upcalls except the exit task gluePatrick Walton-9/+9
2011-05-09rustc: Give our upcall definitions the right valuesPatrick Walton-40/+50
2011-05-09rustc: Declare upcalls with real signatures; preparation for killing ↵Patrick Walton-0/+125
rust_native_rust_* stubs
2011-05-09rustc: Replace our homebrew list of passes with the standard function and ↵Patrick Walton-50/+16
module passes, along with the TargetData passes.
2011-05-06rustc: Make llvm_err() conform to Postel's law a little betterPatrick Walton-1/+6
2011-05-06Rename std modules to be camelcasedMarijn Haverbeke-31/+31
(Have fun mergining your stuff with this.)
2011-05-06rustc: Bump the number of native glues to 8Patrick Walton-1/+1
2011-05-05Fix x86.rs triple for linux.Graydon Hoare-1/+1
2011-05-05Use symbolic register names so that we get the correct encoding on OS X.Rafael Ávila de Espíndola-2/+2
2011-05-05rustc: Link with intrinsics.bc; change intrinsics linkage to linkonce_odrPatrick Walton-2/+28
2011-05-05rustc: Add a binding to LLVM's bitcode parserPatrick Walton-0/+6
2011-05-05rustc: Add a Link module; move crate writing to it to slim down trans slightlyPatrick Walton-0/+176
2011-04-29rustc: Emit pure native glue; we don't call it yetPatrick Walton-12/+31
2011-04-29Implement destructors in rustcMarijn Haverbeke-0/+1
Unlike rustboot, rustc keeps it destructors in vtables. Entry 0 holds either the destructor for the obj or a NULL pointer. The method offsets start at 1.
2011-04-28Add a very minimal set of .cfi_* statements to get part of backtracesRafael Ávila de Espíndola-2/+34
working (on hello world at least): ~/inst/gdb/bin/gdb --args ./foo (gdb) b write ... (gdb) r ... Breakpoint 1, 0xf7f04270 in write () from /lib32/libc.so.6 (gdb) bt 0 0xf7f04270 in write () from /lib32/libc.so.6 1 0x0804931a in rust_native_cdecl_3 () 2 0x080487d7 in _rust_wrapper3_ () 3 0x0804890a in _rust_fn5_main () 4 0x08049440 in rust_native_cdecl_7 ()
2011-04-18rustc: Add an operation field to compare glue with ==, <=, and < modesPatrick Walton-0/+5
2011-04-18rustc: Create stub glue for structural comparisonPatrick Walton-0/+2
2011-04-09Remove silly legacy glue-offset encoding, predicate runtime adjustments by ↵Graydon Hoare-6/+6
ABI. LLVM should inline most glue now.
2011-04-02Change rust_vec to have a 16-byte header, to 16-byte-align vec-body data. ↵Graydon Hoare-1/+2
Major perf win.
2011-03-25Trans nomenclature tidy-up: upcall vs. native vs. extern.Graydon Hoare-21/+22
2011-03-25Another go at changing compile-command, this time using RBUILD env var.Graydon Hoare-2/+2
2011-03-25Revert "Bulk-edit compile commands in emacs chatter to point to assumed ↵Graydon Hoare-2/+2
build/ dir off src root." This reverts commit 846f2e2ba994268725f38c36fa12f1a09f21615c.
2011-03-25Bulk-edit compile commands in emacs chatter to point to assumed build/ dir ↵Graydon Hoare-2/+2
off src root.
2011-03-21Every upcall needs a task pointer to find the C stack. It is just that whenRafael Ávila de Espíndola-11/+22
handling cdecl call they should skip it when calling the final function. There is some cleanup to be done on the generated IL, but this gets us running Hello World for real.
2011-03-16Fixed version of my previous patch to rename the upcall functions. This time ↵Rafael Ávila de Espíndola-3/+3
also update the inline assembly.
2011-03-11rustc: Add some stub metadata to each cratePatrick Walton-0/+10
2011-03-09Fix access to the rust stack.Rafael Ávila de Espíndola-15/+32
2011-03-09swap taskptr and callee in preparation for making taskptr optional.Rafael Ávila de Espíndola-8/+10
2011-03-03Assortment of additional work on vec-append. Not done yet.Graydon Hoare-2/+2
2011-03-02Sketch out some more pieces of vec-append.Graydon Hoare-0/+4
2011-02-22Add ABI tagging to crates, adjust rustc output and runtime stack-frame setup ↵Graydon Hoare-2/+5
so access to argv works.
2011-02-08Add the single instruction required in activate glue to fix burning darwin ↵Graydon Hoare-2/+99
tinderbox. And transplant 100 lines of comments from the ML code.
2011-02-03Capture typarams into obj, independent of body tydesc.Graydon Hoare-1/+2
2011-01-18Add bzero glue and preliminary code for dynamic size/align calculations.Graydon Hoare-0/+4
2011-01-17Use homebrew memcpy, not llvm intrinsic. Can't run the latter on a rust stack.Graydon Hoare-0/+8
2011-01-05Sketch closure-forming logic for nontrivial bindings.Graydon Hoare-0/+6
2010-12-20Mop up cases of s/copy/take/, remove 'binding' terminology, whitespace ↵Graydon Hoare-13/+5
police, and make obj/fn structural.
2010-12-20rustc: Build tydescs for types, and make all take and drop operations go ↵Patrick Walton-0/+11
through the tydescs for simplicity (LLVM inlines them).
2010-12-16Remove calltup fields from ABI, add binding fields.Graydon Hoare-6/+17
2010-12-03rustc: Set data layout and target triplePatrick Walton-0/+20
2010-11-15Fix typo in x86 backend glue that was, by luck, only crashing on OSX.Graydon Hoare-1/+1
2010-11-14Switch upcall glues to fastcall as well.Graydon Hoare-10/+11