Tom Lee
e69e80938b
Define _RUST_STAGEN when building rustrt.
...
This lets us use #ifdefs to determine which stage of the build we happen
to be in, which is useful in the event we need to make changes to rustrt
that are incompatible with the code generated by stage0.
This should help pave the way to completing #6575 , which will likely
require changes to type signatures for spawn_fn & glue_fn in rustrt.
2013-05-24 00:30:01 -07:00
bors
d68c0279ea
auto merge of #6249 : crabtw/rust/arm, r=brson
...
It uses the private field of TCB head to store stack limit. I tested on my Raspberry PI. A simple hello world program ran without any problem. However, for a more complex program, it segfaulted as #6231 .
2013-05-17 18:19:27 -07:00
Young-il Choi
db38ab9ad9
mk: rt.mk regression patch for mingw32 after #6176
2013-05-07 15:26:55 +09:00
Jyun-Yan You
48b6262b38
preliminary Linux ARM support
2013-05-07 13:17:14 +08:00
Daniel Micay
86efd97a10
add gitattributes and fix whitespace issues
2013-05-03 20:01:42 -04:00
Daniel Micay
d6697e7027
pass along CFLAGS/LINK_FLAGS to libuv
...
Closes #6142
2013-05-01 22:13:33 -04:00
Brian Anderson
7cd681684f
rt: Move test functions to rust_test_helpers.cpp
2013-04-15 13:39:15 -07:00
Jyun-Yan You
99b156e78a
mk: mips toolchain config
2013-04-04 18:52:24 +08:00
bors
251d0c4557
auto merge of #5350 : yichoi/rust/pull-0313-2, r=graydon,pcwalton
...
FIX #5330
rename arm-unknown-android to arm-linux-androideabi
2013-03-19 17:06:55 -07:00
Young-il Choi
2657723cc5
mk: rt.mk ar desinated by target-triples
2013-03-14 02:26:09 +09:00
Young-il Choi
268faef63a
mk: target triple rename arm-unknown-android->arm-linux-androideabi
2013-03-13 09:21:12 +09:00
Brian Anderson
14e5a6e5f7
mk: Cleanup. Minor fixes
2013-03-06 22:37:52 -08:00
Young-il Choi
e971d0ce9f
mk: rt.mk fix for libuv cross compile
2013-03-04 13:49:01 +09:00
Young-il Choi
7714d52cd9
mk: cleanup - lib and executable suffix handling
2013-03-02 21:25:12 +09:00
Young-il Choi
26a5dc593c
mk: rewrite make files
2013-02-27 14:53:35 +09:00
Brian Anderson
15c0c35352
mk: Split target triples into bulid triple + host triples + target triples
...
For cross compiling to targets that don't want to build a compiler
2013-02-21 17:51:55 -08:00
Chris Peterson
f4320b6195
move isaac RNG utility functions to new rust_rng.cpp file
2013-02-14 22:30:27 -08:00
Jeff Olson
a74296a39f
build: ifdef for mingw/non-mingw builds
2013-02-10 11:51:05 -08:00
Jeff Olson
a38b16651f
build: tweak rt.mk, as per graydon.. CFLAGS had to stay
2013-02-10 11:51:05 -08:00
Jeff Olson
3a813e29b6
etc: rework of how libuv is integrated into the build
...
- thanks to work in libuv's upstream, we can call libuv's Makefile directly
with parameters, instead of descending in gyp-uv madness and generating
our own.
2013-02-10 11:51:05 -08:00
Brian Anderson
e43c5bdc6b
Rewrite the exchange allocator to work without an active scheduler. #4457
2013-02-06 14:27:36 -08:00
Brian Anderson
02fbd5a164
rt: Remove circular_buffer
2013-02-01 21:22:49 -08:00
Brian Anderson
4f6516969e
rt: Remove ports
2013-02-01 21:22:49 -08:00
Brian Anderson
53ec6c3f9b
rt: Remove shape code
2012-11-05 15:22:35 -08:00
Brian Anderson
1b0c6665d9
Merge remote-tracking branch 'brson/repl'
...
Conflicts:
mk/install.mk
src/rt/rustrt.def.in
2012-11-04 13:42:39 -08:00
Brian Anderson
799eb105b9
Use a linenoise with win32 support
2012-11-04 13:34:14 -08:00
Zack Corr
ea996556b9
rusti: Remove linenoise module, add to rt, remove core::rl
2012-10-30 11:08:36 +10:00
Zack Corr
4912428cb5
rusti: Add linenoise, wrap into core::rl and add rusti REPL tool
...
Add Brian Leibig to AUTHORS.txt for REPL contributions
2012-10-27 18:03:15 +10:00
Brian Anderson
8d932160d9
rt: Remove box annihilator
2012-10-23 12:14:46 -07:00
Patrick Walton
f813f519a5
rt: Remove the cycle collector
2012-09-25 12:13:20 -07:00
Elliott Slaughter
3f0d207b32
gc: Add stack walker for new garbage collector.
...
Safe points are exported in a per-module list via the crate map. A C
runtime call walks the crate map at startup and aggregates the list of
safe points for the program.
Currently the GC doesn't actually deallocate memory on malloc and
free. Adding the GC at this stage is primarily of testing value.
The GC does attempt to clean up exchange heap and stack-allocated
resource on failure.
A result of this patch is that the user now needs to be careful about
what code they write in destructors, because the GC and/or failure
cleanup may need to call destructors. Specifically, calls to malloc
are considered unsafe and may result in infinite loops or segfaults.
2012-09-07 09:21:21 -07:00
Graydon Hoare
b769e29680
Compress metadata section. Seems a minor speed win, major space win.
2012-08-28 14:50:39 -07:00
Ben Blum
bdbad614ac
Remove rust_cond_lock and sys::condition (rename to little_lock)
2012-08-07 18:18:48 -04:00
Eric Holk
dc718d97a6
Adding a lock/condition variable to libcore.
2012-06-19 10:31:12 -07:00
Michael Sullivan
88ec259cee
Put type descriptors in strings created by the runtime. Progress on #2638 .
2012-06-18 15:54:37 -07:00
Tim Chevalier
3e2006a570
Revert "Adding a lock/condition variable to libcore."
...
This reverts commit e394ebda37
.
2012-06-16 15:34:15 -07:00
Eric Holk
e394ebda37
Adding a lock/condition variable to libcore.
2012-06-15 22:00:24 -04:00
Michael Sullivan
f99f2e8ce2
Update the build system to handle dependency on header files. Closes #2547 .
2012-06-14 14:50:14 -07:00
Michael Sullivan
3a36ffe5ff
Revert "Update the build system to handle dependency on header files. Closes #2547."
...
This reverts commit 31f4b63dff
.
2012-06-13 18:37:07 -07:00
Michael Sullivan
31f4b63dff
Update the build system to handle dependency on header files. Closes #2547 .
2012-06-13 16:39:09 -07:00
Michael Sullivan
f8afe107fa
Minor makefile cleanup.
2012-06-13 16:39:09 -07:00
Patrick Walton
851fde879d
rt: Add architecture-specific general-purpose register definitions
...
This will be used for stack crawling, which in turn will be used for GC and
unwinding.
2012-04-04 21:40:34 -07:00
Jon Morton
128a8b6ed5
remove rust_srv
2012-04-01 22:18:40 -05:00
Brian Anderson
609144f7a6
rt: Extract start_main_loop from rust_sched_loop to rust_sched_driver
2012-03-31 19:51:29 -07:00
Brian Anderson
218dd08469
rt: Introduce rust_sched_reaper
...
This just moves the responsibility for joining with scheduler threads
off to a worker thread. This will be needed when we allow tasks to be
scheduled on the main thread.
2012-03-31 19:51:29 -07:00
Brian Anderson
243790836a
rt: Rename rust_task_thread to rust_sched_loop
...
This class no longer represents a thread; it just schedules tasks.
2012-03-31 19:51:29 -07:00
Brian Anderson
6bf8d19712
rt: Extract rust_sched_launcher from rust_task_thread
...
rust_sched_launcher is actually responsible for setting up the thread and
starting the loop. There will be other implementations that do not actually
set up a new thread, in order to support scheduling tasks on the main OS
thread.
2012-03-31 19:51:29 -07:00
Brian Anderson
3a7a408386
rt: Free all outstanding boxes at task death
2012-03-29 16:43:18 -07:00
Graydon Hoare
bd0399863f
Disable some advanced (post glibc-2.3) libuv features when building snaps.
2012-03-26 18:03:53 -07:00
Graydon Hoare
38f0a2e992
Typo. No idea why local build worked.
2012-03-21 18:45:28 -07:00