rust/src
Palmer Cox 6386f887a7 Crypto: update checked addition functions to use CheckedAdd intrinsic.
The shift_add_check_overflow and shift_add_check_overflow_tuple functions are
re-written to be more efficient and to make use of the CheckedAdd instrinsic
instead of manually checking for integer overflow.

* The invokation leading_zeros() is removed and replaced with simple integer
  comparison. The leading_zeros() method results in a ctpop LLVM instruction
  and it may not be efficient on all architectures; integer comparisons,
  however, are efficient on just about any architecture.
* The methods lose the ability for the caller to specify a particular shift
  value - that functionality wasn't being used and removing it allows for the
  code to be simplified.
* Finally, the methods are renamed to add_bytes_to_bits and
  add_bytes_to_bits_tuple to reflect their very specific purposes.
2013-08-17 00:22:27 -04:00
..
compiletest std: Change ProcessOptions struct to have an option of a ~ vector 2013-08-14 16:52:05 -07:00
driver Bring compiletest/rustpkg/driver up to date on std vs core 2013-07-04 16:30:48 -07:00
etc auto merge of #8410 : luqmana/rust/mcpu, r=sanxiyn 2013-08-11 20:50:14 -07:00
libextra Crypto: update checked addition functions to use CheckedAdd intrinsic. 2013-08-17 00:22:27 -04:00
librust std: Transform.find_ -> .find 2013-08-10 07:33:22 -07:00
librustc auto merge of #8532 : kballard/rust/cstr-cleanup, r=erickt 2013-08-16 06:02:14 -07:00
librustdoc Remove unused automatic cfg bindings Fixes #7169 2013-08-13 17:06:27 -07:00
librusti Remove unused automatic cfg bindings Fixes #7169 2013-08-13 17:06:27 -07:00
librustpkg auto merge of #8532 : kballard/rust/cstr-cleanup, r=erickt 2013-08-16 06:02:14 -07:00
libstd auto merge of #8534 : huonw/rust/tls-key-macro, r=alexcrichton 2013-08-16 08:05:10 -07:00
libsyntax auto merge of #8534 : huonw/rust/tls-key-macro, r=alexcrichton 2013-08-16 08:05:10 -07:00
libuv@dfae9c3e95 libsyntax: Fix more merge fallout. 2013-05-22 21:57:11 -07:00
llvm@f67442eee2 Integrate new arm patch and fix an LLVM bug 2013-08-04 10:58:23 -07:00
rt Add a field borrow_offset to the type descriptor indicating 2013-08-11 13:59:45 -04:00
rustllvm auto merge of #8410 : luqmana/rust/mcpu, r=sanxiyn 2013-08-11 20:50:14 -07:00
test auto merge of #8534 : huonw/rust/tls-key-macro, r=alexcrichton 2013-08-16 08:05:10 -07:00
README.txt Update doc references to new names for std, extra, and std::libc 2013-06-16 23:26:08 -07:00
snapshots.txt register new snapshots 2013-08-14 18:45:51 -07:00

This is a preliminary version of the Rust compiler, libraries and tools

Source layout:

librustc/          The self-hosted compiler

libstd/            The standard library (imported and linked by default)
libextra/          The "extras" library (slightly more peripheral code)
libsyntax/         The Rust parser and pretty-printer

rt/                The runtime system
rt/rust_*.cpp      - The majority of the runtime services
rt/isaac           - The PRNG used for pseudo-random choices in the runtime
rt/bigint          - The bigint library used for the 'big' type
rt/uthash          - Small hashtable-and-list library for C, used in runtime
rt/sync            - Concurrency utils
rt/util            - Small utility classes for the runtime.
rt/vg              - Valgrind headers
rt/msvc            - MSVC support
rt/linenoise       - a readline-like line editing library

test/              Testsuite
test/compile-fail  - Tests that should fail to compile
test/run-fail      - Tests that should compile, run and fail
test/run-pass      - Tests that should compile, run and succeed
test/bench         - Benchmarks and miscellanea
test/pretty        - Pretty-printer tests
test/auxiliary     - Dependencies of tests

compiletest/       The test runner

librustpkg/        The package manager and build system

librusti/          The JIT REPL

librustdoc/        The Rust API documentation tool

llvm/              The LLVM submodule

libuv/             The libuv submodule

rustllvm/          LLVM support code

libfuzzer/         A collection of fuzz testers

etc/               Scripts, editor support, misc