rust/src
Björn Steinbrink 565a9bf20b Provide lower level access to the LLVM IR builder
Currently, the helper functions in the "build" module can only append
at the end of a block. For certain things we'll want to be able to
insert code at arbitrary locations inside a block though. Although can
we do that by directly calling the LLVM functions, that is rather ugly
and means that somethings need to be implemented twice. Once in terms
of the helper functions and once in terms of low level LLVM functions.

Instead of doing that, we should provide a Builder type that provides
low level access to the builder, and which can be used by both, the
helper functions in the "build" module, as well larger units of
abstractions that combine several LLVM instructions.
2013-07-21 16:43:06 +02:00
..
compiletest compiletest: Remove stray copies. 2013-07-17 18:03:48 -07:00
driver Bring compiletest/rustpkg/driver up to date on std vs core 2013-07-04 16:30:48 -07:00
etc mk: Remove CFG_INSTALL_SNAP logic. #2664 2013-07-19 15:35:42 -07:00
libextra auto merge of #7912 : graydon/rust/extra-new-benchmarks-1, r=catamorphism 2013-07-20 22:10:28 -07:00
librust librustc: Remove all uses of the Copy bound. 2013-07-17 14:57:53 -07:00
librustc Provide lower level access to the LLVM IR builder 2013-07-21 16:43:06 +02:00
librustdoc syntax: modernise attribute handling in syntax::attr. 2013-07-20 01:06:16 +10:00
librusti auto merge of #7857 : blake2-ppc/rust/fix-test-warnings, r=alexcrichton 2013-07-18 20:55:38 -07:00
librustpkg auto merge of #7902 : huonw/rust/attr++, r=cmr,pcwalton 2013-07-20 20:25:31 -07:00
libstd auto merge of #7896 : pcwalton/rust/pub-extern, r=pcwalton 2013-07-20 18:40:39 -07:00
libsyntax auto merge of #7902 : huonw/rust/attr++, r=cmr,pcwalton 2013-07-20 20:25:31 -07:00
libuv@dfae9c3e95 libsyntax: Fix more merge fallout. 2013-05-22 21:57:11 -07:00
llvm@2e9f0d21fe llvm: Unrevert change 2013-05-08 17:04:03 -07:00
rt auto merge of #7859 : kmcallister/rust/rt-diag-messages, r=pcwalton 2013-07-18 22:40:38 -07:00
rustllvm debuginfo: Fixed some merge fallout 2013-07-19 11:29:27 +02:00
test librustc: Remove pub extern and priv extern from the language. 2013-07-20 17:39:38 -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 Update snapshots file 2013-06-25 16:43:58 +12: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