1. 29 8月, 2018 12 次提交
    • R
    • B
      Auto merge of #53659 - nnethercote:rm-AccumulateVec, r=Mark-Simulacrum · 29e6aabc
      bors 提交于
      Remove `AccumulateVec` and its uses.
      
      It's basically just a less capable version of `SmallVec`.
      
      FWIW, the only use of `ArrayVec` is now within `HybridIdxSet`.
      
      r? @Mark-Simulacrum
      29e6aabc
    • B
      Auto merge of #53642 - alexcrichton:fix-target-cpu-native, r=arielb1 · 9d69e81e
      bors 提交于
      Fix warnings about the `native` target-cpu
      
      This fixes a regression from #53031 where specifying `-C target-cpu=native` is
      printing a lot of warnings from LLVM about `native` being an unknown CPU. It
      turns out that `native` is indeed an unknown CPU and we have to perform a
      mapping to an actual CPU name, but this mapping is only performed in one
      location rather than all locations we inform LLVM about the target CPU.
      
      This commit centralizes the mapping of `native` to LLVM's value of the native
      CPU, ensuring that all locations we inform LLVM about the `target-cpu` it's
      never `native`.
      
      Closes #53322
      9d69e81e
    • B
      Auto merge of #53671 - RalfJung:miri-refactor, r=oli-obk · f1d02c30
      bors 提交于
      Miri engine cleanup
      
      * Unify the two maps in memory to store the allocation and its kind together.
      * Share the handling of statics between CTFE and miri: The miri engine always
            uses "lazy" `AllocType::Static` when encountering a static.  Acessing that
            static invokes CTFE (no matter the machine).  The machine only has any
            influence when writing to a static, which CTFE outright rejects (but miri
            makes a copy-on-write).
      * Add an `AllocId` to by-ref consts so miri can use them as operands without
            making copies.
      * Move responsibilities around for the `eval_fn_call` machine hook: The hook
            just has to find the MIR (or entirely take care of everything); pushing the
            new stack frame is taken care of by the miri engine.
      * Expose the intrinsics and lang items implemented by CTFE so miri does not
            have to reimplement them.
      * Allow Machine to hook into foreign statics (used by miri to get rid of some other hacks).
      * Clean up function calling.
      * Switch const sanity check to work on operands, not mplaces.
      * Move const_eval out of rustc_mir::interpret, to make sure that it does not access private implementation details.
      
      In particular, we can finally make `eval_operand` take `&self`. :-)
      
      Should be merged after https://github.com/rust-lang/rust/pull/53609, across which I will rebase.
      f1d02c30
    • N
      Remove `AccumulateVec` and its uses. · 8cecfa62
      Nicholas Nethercote 提交于
      It's basically just a less capable version of `SmallVec`.
      8cecfa62
    • A
      Fix warnings about the `native` target-cpu · 1fd45a13
      Alex Crichton 提交于
      This fixes a regression from #53031 where specifying `-C target-cpu=native` is
      printing a lot of warnings from LLVM about `native` being an unknown CPU. It
      turns out that `native` is indeed an unknown CPU and we have to perform a
      mapping to an actual CPU name, but this mapping is only performed in one
      location rather than all locations we inform LLVM about the target CPU.
      
      This commit centralizes the mapping of `native` to LLVM's value of the native
      CPU, ensuring that all locations we inform LLVM about the `target-cpu` it's
      never `native`.
      
      Closes #53322
      1fd45a13
    • R
      first test const-ness, then hook fn call · c9b5fac7
      Ralf Jung 提交于
      c9b5fac7
    • R
      fix const_prop detecting unary neg underflows · 506dd705
      Ralf Jung 提交于
      506dd705
    • R
    • R
      fix unsized extern types · 066d2eea
      Ralf Jung 提交于
      066d2eea
    • R
      address nits · f96208ca
      Ralf Jung 提交于
      f96208ca
    • B
      Auto merge of #53679 - japaric:cortex-r, r=alexcrichton · 7061b277
      bors 提交于
      add more Cortex-R targets
      
      This expands on PR #53663 to complete the set of Cortex-R targets and builds
      rust-std components for them.
      
      r? @alexcrichton
      
      each extra rust-std component (there's 4 of them) takes about 3 minutes to build
      on my local machine. In terms of stability (LLVM codegen bugs) these new targets
      should be as stable as the Cortex-M ones (e.g. `thumbv7m-none-eabi`).
      
      If the extra build time is too much we can leave the rust-std components out for
      now
      
      closes #53663
      cc @paoloteti
      7061b277
  2. 28 8月, 2018 28 次提交