summary refs log tree commit diff
path: root/src/comp/back
AgeCommit message (Collapse)AuthorLines
2012-01-19rustc: ";" to "," in enumsPatrick Walton-6/+6
2012-01-19rustc: "tag" -> "enum"Patrick Walton-1/+1
2012-01-19Remove support for the '.' after a nullary tag in a patternTim Chevalier-6/+6
(Commit also includes lots of changes to remove '.'s that a git merge messed up, or else it was monkeys.)
2012-01-18Remove '.' after nullary tags in patternsTim Chevalier-33/+33
Does what it says on the tin. The next commit will remove support for this syntax.
2012-01-19rustc: Use integer from ctypes consistentlyHaitao Li-6/+6
2012-01-19Use ctypes in native function declarationsHaitao Li-12/+13
2012-01-17roll back commit 1c7a62Niko Matsakis-2/+0
2012-01-17Fail slightly more gracefully when given an -o filename that doesn't have an ↵Tim Chevalier-1/+4
extension
2012-01-17Use a memset upcall to zero things without static alignmentMarijn Haverbeke-0/+2
This fixes issues #843 and #1546. The cost of an upcall is unfortunate, though. I assume there must be a way to simply manually compute the pointer or size, using something akin to the formula in `align_to` in `rust_util.h`. I could not get this to work, unfortunately.
2012-01-14build: Build libraries in the bin directory on win32Brian Anderson-1/+0
2012-01-13deprecate fn exprs and the fn() type, preferring fn@ and native fnNiko Matsakis-10/+9
2012-01-13Obj system? What obj system?Marijn Haverbeke-14/+1
Removes the obj system from the compiler. Closes #1484
2012-01-13Remove all remaining uses of objs from the compilerMarijn Haverbeke-2/+2
2012-01-12Revert "build: Build libraries in the bin directory on win32"Brian Anderson-0/+1
This reverts commit 23e0d16b5fd259dc252b220777f164f1e2eb9c30.
2012-01-12build: Build libraries in the bin directory on win32Brian Anderson-1/+0
2012-01-12Make driver::session::session no longer an objectMarijn Haverbeke-39/+40
Rather, it is now a struct where properties like opts are accessed directly, and the error-reporting methods are part of a static impl (with the same name as the type).
2012-01-11Revert "build: Build libraries in the bin directory on win32"Brian Anderson-0/+1
This reverts commit c00ec5f9c936639ec2fd9291cd484afa56aa24c8.
2012-01-11build: Build libraries in the bin directory on win32Brian Anderson-1/+0
2012-01-09Fix rpath bug.Graydon Hoare-2/+2
2012-01-06rejigger impl to have an opaque closure ptr rather thanNiko Matsakis-4/+8
opaque closure
2012-01-06Make binding of fns with bounded type parameters workMarijn Haverbeke-1/+4
Interns non-static dicts to heap-allocated equivalents so that they no longer have stack scope. Closes #1436
2012-01-05rustc: Stop exported back::rpath::testBrian Anderson-3/+1
Tests no longer need to be exported
2012-01-05Moved generic float::min, max to core::math and cleaned up some importsStefan Plantikow-1/+1
2012-01-04"str": rename "str_from_cstr" to "from_cstr" (analogous to the other "from_*")Lenny222-1/+1
2012-01-01link with gcc44+Jyun-Yan You-1/+3
2012-01-01fix link errorJyun-Yan You-1/+4
2012-01-01add missing library, enable segmented stacks for freebsdJyun-Yan You-5/+4
2012-01-01freebsd supportUser Jyyou-4/+35
2011-12-22Register new snapshots, purge log_err and log_full in favour of log(...).Graydon Hoare-1/+1
2011-12-22Merge all 3 log syntaxes, tidy up residual misuses.Graydon Hoare-2/+2
2011-12-22Register snapshots and switch logging over to use of log_full or #error / ↵Graydon Hoare-15/+15
#debug.
2011-12-20removed math leftovers from stdStefan Plantikow-2/+1
2011-12-19Fix a typo.Erick Tryzelaar-1/+1
2011-12-18rustc: Don't emit compact unwind info on macBrian Anderson-0/+8
It's not compatible with the subtlety of __morestack
2011-12-16reorder args to the various vec, option fns so blk comes lastNiko Matsakis-3/+3
2011-12-15massive refactor of how closures workNiko Matsakis-6/+8
2011-12-15Fix bug in library output filename construction: /tmp/foo.rc was being ↵Graydon Hoare-0/+7
linked as lib/tmp/foo-<hash>-<vers>.so not /tmp/foo-<hash>-<vers>.so
2011-12-14refactor trans into trans_closure; restore original closure reprNiko Matsakis-2/+2
2011-12-14insert a field into the closure storing number of ty descsNiko Matsakis-3/+2
2011-12-14get basic code generation working, clone type descs for lambda[send]Niko Matsakis-14/+26
2011-12-14rustc: Always write split stack prologuesBrian Anderson-6/+4
2011-12-13Copy first batch of material from libstd to libcore.Graydon Hoare-7/+7
2011-12-12rustc: Work around a segmentation faultHaitao Li-24/+24
On Linux/Mac, I got a segmentation fault: (gdb) bt #0 0x00000000007519af in glue_take584 () #1 0x00000000006d4bec in back::rpath::get_rpath_flags::_3899df2ca513c603 () #2 0x00000000006c7655 in back::link::link_binary::_7afde00a9791031c () #3 0x00000000007d3ff5 in driver::rustc::compile_input::thunk9212 () #4 0x0000000000710f24 in driver::rustc::time::_3e691b2a4ba58aee () #5 0x000000000071a79d in driver::rustc::compile_input::_7b4a41b87c18e034 () #6 0x000000000072f0a9 in driver::rustc::main::_cd8b8c8185af3dee () #7 0x000000000072f1ed in _rust_main () #8 0x00007ffff7e6e146 in task_start_wrapper (a=<optimized out>) at ../src/rt/rust_task.cpp:176 The variable `output` or `out_filename` becomes (null) after the definition of `fn unlib`. Move the function defintion to the beginning seems prevent the crash on Linux.
2011-12-12rustc: Refactor and get built on WindowsHaitao Li-14/+12
2011-12-12rustc: Hash includes direct dependent cratesHaitao Li-3/+11
2011-12-12rustc: build versioned library with hash in its nameHaitao Li-6/+13
Also updated build to install versioned libraries and added a few missing actions for `make clean`.
2011-12-08rustc: Determine the crate type (lib/bin) in the session, not session optsBrian Anderson-2/+2
This is in preparation for adding a #[crate_type] attribute
2011-12-06rt: Various tweaks to make __morestack unwinding work on linuxBrian Anderson-2/+4
When unwinding through __morestack the stack limit in the TLS is invalidated and must be reset. Instead of actually landing at __morestack we're just going to make all our Rust landing pads call upcall_reset_stack_limit, which will find the stack segment that corresponds to the current stack pointer and put the limit in the TLS. Also massively expand the stack segment red zone to make more room for the dynamic linker. Will fix in the future.
2011-12-04Upgrade LLVM to svn revision 145779Brian Anderson-4/+6
This pulls in commits 145765 & 145766, which are required for split stacks.
2011-11-28rustc: Link in libmorestack.a when --stack-growthBrian Anderson-0/+5