Commit Graph

6104 Commits

Author SHA1 Message Date
Niko Matsakis c78b1639b4 fix c-stack-cdecl when used w/ i64 2011-10-24 17:03:18 -07:00
Niko Matsakis d41385a69b kill errant log_err 2011-10-24 16:06:18 -07:00
Niko Matsakis a5cbf4b13b remove (unused) fn rust_list_files from win32_fs; that is
defined in fs.rs
2011-10-24 16:06:18 -07:00
Niko Matsakis 8f2d75d53c switch over sqrt from llvm to c-stack-cdecl, exposing a bug in
the supported return types of upcall_c_stack
2011-10-24 16:06:18 -07:00
Niko Matsakis d69a83b021 add implicit ctx 2011-10-24 16:06:18 -07:00
Niko Matsakis e308f3346b remove unused task ptr arg 2011-10-24 16:06:18 -07:00
Niko Matsakis c81808a9f7 update intrinsics file 2011-10-24 16:06:18 -07:00
Niko Matsakis 973a285371 move uses of rust ABI in tests to cdecl or c-stack-cdecl as appr
Note: I found a bug in c-stack-cdecl which codes not permit such
native functions to be used as values.  I added an xfail-test
(c-stack-as-value) documenting it.
2011-10-24 16:06:18 -07:00
Niko Matsakis f8de679c1e move remaining task natives to cdecl ABI (run on rust stack) 2011-10-24 16:06:18 -07:00
Niko Matsakis e838edc0b3 isolate those funcs in task that can run on the c stack 2011-10-24 16:06:17 -07:00
Niko Matsakis fb48817ade work around bug when calling c-stack-cdecl fns from outside crate
In the main test, I call the wrapper instead of the native fn, as intended.
I also added an xfail-test that exercises the broken code path.  Will
file a bug.

Description of the broken code path:

The code path is that when we look up the external identifier we go through
trans_external_path() ->  type_of_ty_param_kinds_and_ty() ->
type_of_fn_from_ty() -> type_of_fn(), and type_of_fn() adds a lot of external
parameters. Problem is, I guess, that we don't pass the native ABI (or even the
fact that it's a native function!), just the types and kinds of the parameters.
2011-10-24 16:06:17 -07:00
Niko Matsakis 02d7a1e781 move sys fns into c-stack-cdecl and get_type_desc() into rusti
there is one test failure, stdtest/sys.rs, which inexplicably
(thus far) fails to compile because it invokes
sys::rustrt::last_os_error() instead of invoking
sys::last_os_error().  If stdtest/sys.rs is updated to invoke
the wrapper, it passes.  Still tracing the source of this error.
2011-10-24 16:06:17 -07:00
Niko Matsakis 0598635bdc migrate leak 2011-10-24 16:06:17 -07:00
Niko Matsakis 8eb336a705 migrate rust_run_program 2011-10-24 16:06:17 -07:00
Niko Matsakis 5ddc15e42e migrate debugging funcs 2011-10-24 16:06:17 -07:00
Niko Matsakis c04f42e2c7 migrate sched_threads call 2011-10-24 16:06:17 -07:00
Niko Matsakis 6910552698 convert str methods to c-stack-cdecl 2011-10-24 16:06:17 -07:00
Niko Matsakis 12ab0d66f5 make time module use c-stack-cdecl 2011-10-24 16:06:17 -07:00
Niko Matsakis 96629d5c21 move rand functions into c-stack-cdecl mode 2011-10-24 16:06:17 -07:00
Niko Matsakis 35e01e0137 remove unnecessary && from various file routines 2011-10-24 16:06:17 -07:00
Niko Matsakis af99b4b0dc move more native "rust" to native "c-stack-cdecl" 2011-10-24 16:06:16 -07:00
Niko Matsakis 910f7c6dd3 move io.rs natives from "rust" to "c-stack-stdlib" 2011-10-24 16:06:16 -07:00
Niko Matsakis b13e7e0f3d move fs routines to c-stack-stdlib 2011-10-24 16:06:16 -07:00
Niko Matsakis 4880065429 rip out unused task pointers 2011-10-24 16:06:16 -07:00
Niko Matsakis d9b23cb022 move comm functions out of rust abi 2011-10-24 16:06:16 -07:00
Niko Matsakis 44697a4293 purge log_err 2011-10-24 16:06:16 -07:00
Niko Matsakis e590869c8f update vec libs to use c-stack-cdecl calling convention 2011-10-24 16:06:16 -07:00
Brian Anderson 548c92df9c Register snapshots 2011-10-24 13:10:41 -07:00
Brian Anderson ff669cf5ad Revert "Register snapshots"
This reverts commit 6e40f705c1.
2011-10-23 20:40:42 -07:00
Brian Anderson 3571061bcc Revert "Register snapshots"
This reverts commit 24a6d334b7.
2011-10-23 20:40:33 -07:00
Brian Anderson 24a6d334b7 Register snapshots 2011-10-23 20:11:07 -07:00
Brian Anderson 6e40f705c1 Register snapshots 2011-10-23 19:41:55 -07:00
Brian Anderson 8c4e192d91 Add commentary about -znoexecstack 2011-10-23 19:07:55 -07:00
Austin Seipp 7a8e12ca6d Make sure librustrt.so is linked with a non-executable stack.
Fixes #798.
2011-10-23 19:05:23 -07:00
Austin Seipp 1703e9ec89 Fix an insane rt build error running 'make check -j3' 2011-10-23 19:04:49 -07:00
Brian Anderson 4c95c52016 Remove a test binary that shouldn't exist 2011-10-23 14:23:09 -07:00
Brian Anderson 4681d267c6 Add Austin Seipp to AUTHORS.txt 2011-10-23 13:52:19 -07:00
Austin Seipp 5ccf372755 Make sure $CFG_LLVM_CONFIG is set to $CFG_LLVM_ROOT/bin/llvm-config
On my machine I have two LLVM builds, one of regular HEAD and one
for Rust in ~/rust-llvm - by default CFG_LLVM_CONFIG is set to
/usr/local/bin/llvm-config which is wrong, because the probe for it
initially happens earlier in configure and succeeds (so putvar is called.)

This causes it to be emitted twice into the Makefile but the second
instance wins.
2011-10-23 01:07:40 -05:00
Brian Anderson b916c57021 Update src/etc/gyp-uv
Make instructions more accurate. Make the sed commands work on linux.
2011-10-22 17:38:27 -07:00
Brian Anderson bdbeb75bfb Upgrade libuv to 179f475b2ad64729feb0422f06ce133cb364482a 2011-10-22 17:37:18 -07:00
Brian Anderson 81a44ccacf Remove hack to break the AST fold cycle. Closes #998 2011-10-21 17:47:31 -07:00
Brian Anderson 160c56e768 Get 'make tidy' to work rustllvm and rt again 2011-10-21 17:35:52 -07:00
Brian Anderson 93d940de54 Register snapshots 2011-10-21 17:27:17 -07:00
Brian Anderson 739b1b5b53 Cycle-collect objects 2011-10-21 17:21:59 -07:00
Niko Matsakis 020726c981 update trans_c_stack_native_call() to use type_of_explicit_args()
currently trans_c_stack_native_call() had some ad-hoc code for
determining the type of the arguments. this code was not in
agreement with the rest of trans. now it uses the same code path.
2011-10-21 16:19:28 -07:00
Niko Matsakis 67d3d9308f add get_type_desc to list of exported funcs 2011-10-21 16:19:27 -07:00
Niko Matsakis cdf91bbf9a add get_type_desc function to library 2011-10-21 16:19:27 -07:00
Niko Matsakis 80102c9d24 avoid extra load for by_mutable_ref parameters 2011-10-21 16:19:27 -07:00
Brian Anderson 7ab6315f5f Free vectors during cc sweep 2011-10-21 16:07:40 -07:00
Brian Anderson 2d713215a8 Record the internal reference count of environment boxes. Closes #981 2011-10-21 14:05:16 -07:00