Skip to content
Permalink
Branch: new-emscripten
Commits on Aug 6, 2016
  1. Configure LLVM to use js backend

    badboy committed Aug 6, 2016
    Initialize the asmjs backend for LLVM
Commits on Aug 5, 2016
  1. Auto merge of rust-lang#35283 - shantanuraj:master, r=jonathandturner

    bors committed Aug 5, 2016
    Update wording on E0080
    
    Part of rust-lang#35223
    
    Update wording on error E0080. Change "attempted" to "attempt"
    
    r? @GuillaumeGomez
  2. Auto merge of rust-lang#35274 - GuillaumeGomez:err_codes, r=jonathand…

    bors committed Aug 5, 2016
    …turner
    
    Add new error code tests
    
    r? @jonathandturner
Commits on Aug 4, 2016
  1. Auto merge of rust-lang#35300 - eddyb:mir-neg-overflow, r=arielb1

    bors committed Aug 4, 2016
    rustc_trans: don't Assert(Overflow(Neg)) when overflow checks are off.
    
    Generic functions using `Neg` on primitive types would panic even in release mode, with MIR trans.
    The solution is a bit hacky, as I'm checking the message, since there's no dedicated `CheckedUnOp`.
    
    Blocks Servo rustup ([failure rust-lang#1](http://build.servo.org/builders/linux-rel/builds/2477/steps/test_3/logs/stdio), [failure rust-lang#2](http://build.servo.org/builders/mac-rel-css/builds/2364/steps/test/logs/stdio)) - this should be the last hurdle, it affects only one test.
  2. Auto merge of rust-lang#35168 - scottcarr:deaggregation, r=nikomatsakis

    bors committed Aug 4, 2016
    [MIR] Deaggregate structs to enable further optimizations
    
    Currently, we generate MIR like:
    
    ```
    tmp0 = ...;
    tmp1 = ...;
    tmp3 = Foo { a: ..., b: ... };
    ```
    
    This PR implements "deaggregation," i.e.:
    
    ```
    tmp3.0 = ...
    tmp3.1 = ...
    ```
    
    Currently, the code only deaggregates structs, not enums.  My understanding is that we do not have MIR to set the discriminant of an enum.
  3. Auto merge of rust-lang#35015 - petrochenkov:forearg, r=nikomatsakis

    bors committed Aug 4, 2016
    Properly enforce the "patterns aren't allowed in foreign functions" rule
    
    Cases like `arg @ PATTERN` or `mut arg` were missing.
    Apply the same rule to function pointer types.
    
    Closes rust-lang#35203
    [breaking-change], no breakage in sane code is expected though
    r? @nikomatsakis
    
    This is somewhat related to rust-lang/rfcs#1685 (cc @matklad).
    The goal is to eventually support full pattern syntax where it makes sense (function body may present) and to support *only* the following forms - `TYPE`, `ident: TYPE`, `_: TYPE` - where patterns don't make sense (function body doesn't present), i.e. in foreign functions and function pointer types.
  4. Update wording on E0080

    shantanuraj committed Aug 4, 2016
    Change "attempted" to "attempt"
  5. Auto merge of rust-lang#34520 - Manishearth:fix-unsafecell-docs, r=st…

    bors committed Aug 4, 2016
    …eveklabnik
    
    Clarify UnsafeCell docs; fix rust-lang#34496
    
    None
Commits on Aug 3, 2016
  1. Auto merge of rust-lang#35261 - eddyb:llvm-autoupgrade, r=nikomatsakis

    bors committed Aug 3, 2016
    Support removed LLVM intrinsics by invoking its AutoUpgrade mechanism.
    
    Turns out that LLVM sometimes renames platform intrinsics or replaces them with first-class instructions.
    For example, signed minimum became `select (icmp SLT, a, b), a, b` where `a` and `b` are vectors.
    
    This is blocking the Servo rustup ([relevant failure](http://build.servo.org/builders/windows-dev/builds/226/steps/compile/logs/stdio)), as they're using a few such intrinsics.
    The fix in this PR is to invoke LLVM's own `AutoUpgrade` mechanism to do the replacements.
  2. Auto merge of rust-lang#35174 - arielb1:llvm-type-audit, r=eddyb

    bors committed Aug 3, 2016
    Audit C++ types in rustllvm
    
    cc @eddyb
    
    Fixes rust-lang#35131
  3. finish type-auditing rustllvm

    arielb1 authored and Ariel Ben-Yehuda committed Aug 2, 2016
  4. split the FFI part of rustc_llvm to rustc_llvm::ffi

    arielb1 authored and Ariel Ben-Yehuda committed Aug 2, 2016
  5. begin auditing the C++ types in RustWrapper

    arielb1 authored and Ariel Ben-Yehuda committed Aug 1, 2016
  6. audit LLVM C++ types in ArchiveWrapper and PassWrapper

    arielb1 authored and Ariel Ben-Yehuda committed Aug 1, 2016
  7. remove the ExecutionEngine binding

    arielb1 authored and Ariel Ben-Yehuda committed Aug 1, 2016
    the code has no tests and will just bitrot by itself.
    
    this is a [breaking-change]
  8. Auto merge of rust-lang#35178 - m4b:fix-relx-musl, r=alexcrichton

    bors committed Aug 3, 2016
    Add -mrelax-relocations=no hacks to fix musl build
    
    * this is just a start, dunno if it will work, but I'll just push it out to get feedback (my rust is still building 😢)
    * I don't know much about rustbuild, so i just added that flag in there. it's a total hack, don't judge me
    * I suspect the places in the musl .mk files are sufficient (but we may also need it present when building std), I'm not sure, needs more testing.
  9. Auto merge of rust-lang#35176 - japaric:no-atomics, r=alexcrichton

    bors committed Aug 3, 2016
    core: fix `cargo build` for targets with "max-atomic-width": 0
    
    This crate was failing to compile due to dead_code/unused_imports
    warnings. This commits disables these two lints for these targets.
    
    ---
    
    r? @alexcrichton
    cc @Amanieu is `cfg(target_has_atomic = "8")` the right `cfg` to use? I think that all targets that support some form of atomics will at a minimum support byte level atomics.
    
    FWIW, the only thing that's left in `sync::atomic` for these targets is `Ordering` and the `fence` function.
  10. Auto merge of rust-lang#35159 - michaelwoerister:incr-comp-implies-or…

    bors committed Aug 3, 2016
    …bit, r=nikomatsakis
    
    Automatically enable -Zorbit if -Zincremental is specified.
    
    Fixes rust-lang#34973
    
    r? @nikomatsakis
Commits on Aug 2, 2016
  1. Auto merge of rust-lang#35197 - eddyb:mir-cross-crate, r=nikomatsakis

    bors committed Aug 2, 2016
    rustc_trans: don't lose the cross-crate DefId, MIR trans needs it.
    
    We might have been missing out on some issues because MIR trans was never being used cross-crate.
    
    cc @rust-lang/compiler
  2. Properly enforce the "patterns aren't allowed in foreign functions" c…

    petrochenkov committed Jul 16, 2016
    …heck
    
    Apply the same check to function pointer types
  3. Auto merge of rust-lang#35187 - alexcrichton:only-orbit-off-stage1-an…

    bors committed Aug 2, 2016
    …d-two, r=eddyb
    
    mk: Only pass -Zorbit=off in stage1/2
    
    The stage0 compiler doesn't understand this option.
  4. mk: Only pass -Zorbit=off in stage1/2

    alexcrichton committed Aug 2, 2016
    The stage0 compiler doesn't understand this option.
  5. core: fix `cargo build` for targets with "max-atomic-width": 0

    japaric committed Aug 2, 2016
    This crate was failing to compile due to dead_code/unused_imports
    warnings. This commits disables these two lints for these targets.
Older
You can’t perform that action at this time.