about summary refs log tree commit diff
path: root/src/rt/rust_builtin.cpp
AgeCommit message (Collapse)AuthorLines
2013-07-22std: Remove unstable::global. UnusedBrian Anderson-6/+0
2013-07-22std::rt: Stop using unstable::global in change_dir_lockedBrian Anderson-0/+12
2013-07-22std: Remove weak_task API. UnusedBrian Anderson-12/+0
2013-07-18auto merge of #7856 : brson/rust/no-thread-per-core, r=pcwaltonbors-6/+0
This doesn't make sense under the new scheduler.
2013-07-15remove headers from unique vectorsDaniel Micay-3/+3
2013-07-12auto merge of #7734 : alexcrichton/rust/issue-3395, r=sanxiynbors-1/+1
Also ends up fixing one case in libstd. Closes #3395
2013-07-11auto merge of #7677 : alexcrichton/rust/tls-gc, r=pcwaltonbors-7/+3
cc #6004 and #3273 This is a rewrite of TLS to get towards not requiring `@` when using task local storage. Most of the rewrite is straightforward, although there are two caveats: 1. Changing `local_set` to not require `@` is blocked on #7673 2. The code in `local_pop` is some of the most unsafe code I've written. A second set of eyes should definitely scrutinize it... The public-facing interface currently hasn't changed, although it will have to change because `local_data::get` cannot return `Option<T>`, nor can it return `Option<&T>` (the lifetime isn't known). This will have to be changed to be given a closure which yield `&T` (or as an Option). I didn't do this part of the api rewrite in this pull request as I figured that it could wait until when `@` is fully removed. This also doesn't deal with the issue of using something other than functions as keys, but I'm looking into using static slices (as mentioned in the issues).
2013-07-11Expand ctypes warnings to warn about *int/*uintAlex Crichton-1/+1
Also ends up fixing one case in libstd
2013-07-09std: Remove ThreadPerCore spawn mode. UnusedBrian Anderson-6/+0
2013-07-09Use purely an owned vector for storing TLS dataAlex Crichton-7/+3
2013-07-09rt: Make the old rand builtins work with newschedBrian Anderson-11/+5
2013-07-09std: Make os::set_exit_status work with newschedBrian Anderson-0/+15
2013-07-03Merge remote-tracking branch 'mozilla/master'Brian Anderson-16/+10
Conflicts: src/libextra/test.rs src/libstd/at_vec.rs src/libstd/cleanup.rs src/libstd/rt/comm.rs src/libstd/rt/global_heap.rs src/libstd/task/spawn.rs src/libstd/unstable/lang.rs src/libstd/vec.rs src/rt/rustrt.def.in src/test/run-pass/extern-pub.rs
2013-06-30vec: implement exchange vector reserve in RustDaniel Micay-7/+0
2013-06-25auto merge of #7254 : Blei/rust/intrinsic-overhaul, r=cmrbors-9/+0
This sets the `get_tydesc()` return type correctly and removes the intrinsic module. See #3730, #3475. Update: this now also removes the unused shape fields in tydescs.
2013-06-24std: Make box annihilator work with newschedBrian Anderson-0/+6
2013-06-24std: Rewrite vec_reserve_shared_actual in RustBrian Anderson-4/+8
2013-06-23Support foreign 'static mut' variables as wellAlex Crichton-0/+10
2013-06-23Remove rust_call_tydesc_gluePhilipp Brüschweiler-8/+0
Towards #4812. Also includes some minor cleanups.
2013-06-23Remove unused shape fields from typedescsPhilipp Brüschweiler-4/+3
2013-06-21std: Make console log off/on controls work with newschedBrian Anderson-3/+9
2013-06-21std::rt: Support os::argsBrian Anderson-0/+18
2013-06-20Merge remote-tracking branch 'brson/io' into io-upstreamBrian Anderson-0/+7
Conflicts: src/rt/rust_builtin.cpp src/rt/rustrt.def.in
2013-06-21Remove all #[cfg(stage0)]-protected codeJames Miller-11/+0
New snapshot means this can all go. Also removes places that have comments that say they are workarounds for stage0 errors.
2013-06-18std: Work around some failing 'run' tests when valgrinding. #7224Brian Anderson-0/+6
Under valgrind on 64->32 cross compiles the dynamic linker is emitting some error messages on stderr, which interferes with the tests that are checking stderr.
2013-06-06rt: Add rust_get_num_cpusBrian Anderson-0/+7
2013-05-28auto merge of #6731 : thomaslee/rust/issue-6575, r=pcwaltonbors-0/+11
Fix for #6575. In the trans phase, rustc emits code for a function parameter that goes completely unused in the event the return type of the function in question happens to be an immediate. This patch modifies rustc & parts of rustrt to ensure that the vestigial parameter is no longer present in compiled code.
2013-05-27Added _RUST_STAGEN guard to rust_call_tydesc_glueTom Lee-0/+7
2013-05-27Add _RUST_STAGE0 #ifdefsTom Lee-0/+4
2013-05-27Omit unused implicit argument if return type is immediate.Tom Lee-4/+4
2013-05-27Use passing by-value in gmtime, mktimeDaniel Farina-6/+6
Per the recommendation of the now-removed FIXME.
2013-05-20rt: Rename rust_initialize_global_state to rust_initialize_rt_tls_keyBrian Anderson-2/+2
2013-05-15rt: Rename sched_key to rt_keyBrian Anderson-7/+7
It is more general-purpose than holding scheduler pointers
2013-05-14core::rt: 0 is a valid TLS keyBrian Anderson-2/+2
2013-05-08auto merge of #6323 : brson/rust/nullary, r=thestingerbors-7/+0
There's no need to delegate to C to call the Rust main function.
2013-05-07rt: Remove rust_call_nullary_fnBrian Anderson-7/+0
There's no need to delegate to C to call the Rust main function.
2013-05-07rt: Eliminate the dependency on rust_kernel from rust_rngBrian Anderson-5/+4
2013-05-05Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freezeNiko Matsakis-0/+57
Conflicts: src/libcore/core.rc src/libcore/hashmap.rs src/libcore/num/f32.rs src/libcore/num/f64.rs src/libcore/num/float.rs src/libcore/num/int-template.rs src/libcore/num/num.rs src/libcore/num/strconv.rs src/libcore/num/uint-template.rs src/libcore/ops.rs src/libcore/os.rs src/libcore/prelude.rs src/libcore/rt/mod.rs src/libcore/unstable/lang.rs src/librustc/driver/session.rs src/librustc/middle/astencode.rs src/librustc/middle/borrowck/check_loans.rs src/librustc/middle/borrowck/gather_loans.rs src/librustc/middle/borrowck/loan.rs src/librustc/middle/borrowck/preserve.rs src/librustc/middle/liveness.rs src/librustc/middle/mem_categorization.rs src/librustc/middle/region.rs src/librustc/middle/trans/base.rs src/librustc/middle/trans/inline.rs src/librustc/middle/trans/reachable.rs src/librustc/middle/typeck/check/_match.rs src/librustc/middle/typeck/check/regionck.rs src/librustc/util/ppaux.rs src/libstd/arena.rs src/libstd/ebml.rs src/libstd/json.rs src/libstd/serialize.rs src/libstd/std.rc src/libsyntax/ast_map.rs src/libsyntax/parse/parser.rs src/test/compile-fail/borrowck-uniq-via-box.rs src/test/compile-fail/regions-infer-borrow-scope-within-loop.rs src/test/run-pass/borrowck-nested-calls.rs
2013-05-01add an option to debug borrows (RUST_DEBUG_BORROW) so you canNiko Matsakis-0/+14
find out where the offending borrow occurred. This ... still needs some work.
2013-04-25rt: abort doesn't take an argumentBrian Anderson-1/+1
2013-04-23Merge remote-tracking branch 'brson/io'Brian Anderson-0/+57
This also reverts some changes to TLS that were leaking memory. Conflicts: src/libcore/rt/uv/net.rs src/libcore/task/local_data_priv.rs src/libcore/unstable/lang.rs
2013-04-22core::rt: Add unwinding to newsched tasksBrian Anderson-0/+22
2013-04-21core::rt: Add the local heap to newsched tasksBrian Anderson-0/+35
Reusing the existing boxed_region implementation from the runtime
2013-04-21auto merge of #5887 : jdm/rust/stackbounds, r=brsonbors-0/+5
This is needed to allow GC to work in SpiderMonkey.
2013-04-21rt: Make the C stack segment accessible to runtime users.Josh Matthews-0/+5
2013-04-19core: Add rt::context for figuring out what runtime services are availableBrian Anderson-0/+5
Conflicts: src/libcore/rt/sched/mod.rs
2013-04-15rt: Move test functions to rust_test_helpers.cppBrian Anderson-86/+0
2013-04-14add rust_dbg_extern_identity_TwoDoubles to prevent check-fast failureJyun-Yan You-0/+10
2013-03-18core: Initialize global state lazily in the Scheduler ctorBrian Anderson-4/+13
I don't want any global one-time initalization functions because that will make embedding harder.
2013-03-18Add a way to run the test suite with the new schedulerBrian Anderson-0/+31
TESTARGS=--newrt make check-stage1-rpass Conflicts: src/rt/rustrt.def.in