about summary refs log tree commit diff
path: root/src/librustc_codegen_llvm/Cargo.toml
AgeCommit message (Collapse)AuthorLines
2020-08-30mv compiler to compiler/mark-36/+0
2020-08-20Switch to Snappy compression for metadataJosh Triplett-1/+1
2020-08-06Incorporate tracing cratebishtpawan-1/+1
2020-07-31Move from `log` to `tracing`Oliver Scherer-1/+1
2020-06-02Make things build againVadim Petrochenkov-1/+1
2020-03-30rustc -> rustc_middle part 1Mazdak Farrokhzad-1/+1
2020-03-19Refactorings to begin getting rid of rustc_codegen_utilsMark Mansi-1/+0
2020-02-29Rename `syntax` to `rustc_ast` in source codeVadim Petrochenkov-1/+1
2020-02-29Make it build againVadim Petrochenkov-1/+1
2020-02-13add selfprofiling for new llvm passmanagerAndreas Jonson-0/+1
2020-02-01Move builtin attribute logic to new rustc_attr crate.Mazdak Farrokhzad-0/+1
For now, this is all the crate contains, but more attribute logic & types will be moved there over time.
2020-01-23Add `-Z no-link` flagVictor Ding-0/+1
Adds a compiler option to allow rustc compile a crate without linking. With this flag, rustc serializes codegen_results into a .rlink file.
2020-01-09Remove unused dependenciesShotaro Yamada-1/+0
2020-01-05Remove rustc_hir reexports in rustc::hir.Mazdak Farrokhzad-0/+1
2020-01-01Auto merge of #67729 - mati865:deps, r=nikomatsakisbors-1/+1
Bump smallvec
2020-01-01Rename `syntax_pos` to `rustc_span` in source codeVadim Petrochenkov-1/+1
2019-12-30Rename `libsyntax_ext` and `libsyntax_expand` in codeVadim Petrochenkov-1/+1
2019-12-30Make things build againVadim Petrochenkov-2/+2
2019-12-30Bump smallvecMateusz Mikuła-1/+1
2019-12-11Fix fallout from rebaseAaron Hill-0/+2
2019-12-11rustc: Link LLVM directly into rustc againAlex Crichton-1/+19
This commit builds on #65501 continue to simplify the build system and compiler now that we no longer have multiple LLVM backends to ship by default. Here this switches the compiler back to what it once was long long ago, which is linking LLVM directly to the compiler rather than dynamically loading it at runtime. The `codegen-backends` directory of the sysroot no longer exists and all relevant support in the build system is removed. Note that `rustc` still supports a dynamically loaded codegen backend as it did previously, it just no longer supports dynamically loaded codegen backends in its own sysroot. Additionally as part of this the `librustc_codegen_llvm` crate now once again explicitly depends on all of its crates instead of implicitly loading them through the sysroot. This involved filling out its `Cargo.toml` and deleting all the now-unnecessary `extern crate` annotations in the header of the crate. (this in turn required adding a number of imports for names of macros too). The end results of this change are: * Rustbuild's build process for the compiler as all the "oh don't forget the codegen backend" checks can be easily removed. * Building `rustc_codegen_llvm` is much simpler since it's simply another compiler crate. * Managing the dependencies of `rustc_codegen_llvm` is much simpler since it's "just another `Cargo.toml` to edit" * The build process should be a smidge faster because there's more parallelism in the main rustc build step rather than splitting `librustc_codegen_llvm` out to its own step. * The compiler is expected to be slightly faster by default because the codegen backend does not need to be dynamically loaded. * Disabling LLVM as part of rustbuild is still supported, supporting multiple codegen backends is still supported, and dynamic loading of a codegen backend is still supported.
2019-10-21Remove `src/llvm-emscripten` submoduleAlex Crichton-6/+0
With #65251 landed there's no need to build two LLVM backends and ship them with rustc, every target we have now uses the same LLVM backend! This removes the `src/llvm-emscripten` submodule and additionally removes all support from rustbuild for building the emscripten LLVM backend. Multiple codegen backend support is left in place for now, and this is intended to be an easy 10-15 minute win on CI times by avoiding having to build LLVM twice.
2019-09-05Remove codegen dependenciesMark Rousskov-4/+0
Not doing this leads to building two copies of e.g. num_cpus in the sysroot and _llvm deps, leading to conflicts between the two when compiling librustc_codegen_llvm. It's not entirely clear why this is the case after the changes in this PR but likely has something to do with a subtle difference in ordering or similar.
2019-07-31Deduplicate rustc_demangle in librustc_codegen_llvmAlex Crichton-1/+0
This commit removes the crates.io dependency of `rustc-demangle` from `rustc_codegen_llvm`. This crate is actually already pulled in to part of the `librustc_driver` build and with the upcoming pipelining implementation in Cargo it causes build issues if `rustc-demangle` is left to its own devices. This is not currently required, but once pipelining is enabled for rustc's own build it will be required to build correctly.
2019-07-07Remove some dummy dependenciesJohn Kåre Alsaker-0/+1
2019-05-31Update rustc-demangle version.Eduard-Mihai Burtescu-1/+1
2019-02-18librustc_codegen_llvm => 2018Taiki Endo-1/+2
2018-11-22Add rustc_codegen_ssa to sysrootbjorn3-1/+0
2018-11-16Beginning of moving all backend-agnostic code to rustc_codegen_ssaDenis Merigoux-0/+1
2018-08-31Support local ThinLTO with incremental compilation.Michael Woerister-0/+1
2018-08-06Building librustc_codegen_llvm in a separate directoryMark Rousskov-27/+0
This allows clearing it out and building it separately from the compiler. Since it's essentially a different and separate crate this makes sense to do, each cargo invocation should generally happen in its own directory.
2018-06-20Replace tempdir by tempfile in librustc_transBastien Orivel-1/+1
2018-05-17Rename trans to codegen everywhere.Irina Popa-0/+49