Uh oh!
There was an error while loading. Please reload this page.
Rebase to the llvm-project monorepo - #57675
Conversation
rust-highfive
commented
Jan 16, 2019
|
alexcrichton
commented
Jan 16, 2019
@bors: r+ |
bors
commented
Jan 16, 2019
📌 Commit 50e655e5cf9a8f9e610106a7e612379b61217e8a has been approved by |
There was a problem hiding this comment.
I left the LLVM-related src/tools/* here too. My thought was to keep ignoring those paths in tidy, in case a developer still has those obsolete submodules in place. (For instance, they may be moving between branches and don't want to remove them.)
Centril
commented
Jan 17, 2019
@bors p=3 |
alexcrichton
commented
Jan 17, 2019
@bors: r+ I've added two more commits from rust-lang/llvm-project#2 |
bors
commented
Jan 17, 2019
📌 Commit aa9d564d917ee7efd998531ac75062feb2e3caba has been approved by |
bors
commented
Jan 18, 2019
⌛ Testing commit aa9d564d917ee7efd998531ac75062feb2e3caba with merge 5862807814fe0437cd5cf017c09e1b8bb66dc657... |
bors
commented
Jan 18, 2019
💔 Test failed - status-appveyor |
nikic
commented
Jan 18, 2019
Not really clear to me why it fails to compile core from the AppVeyor log, but possibly this is because compiler-rt in https://github.com/rust-lang-nursery/compiler-builtins hasn't been synced with the LLVM version we're updating to here. |
cuviper
commented
Jan 18, 2019
Hmm, I wonder if we could get compiler-builtins to just use the monorepo's compiler-rt, so they're always in sync. It would mean the Anyway, I do have a machine that I can boot into Windows, so I'll try to reproduce this... |
alexcrichton
commented
Jan 18, 2019
I think it's probably also fine to just add an llvm-project in the compiler-builtins repository, we can deal with publishing far less to crates.io and git deps hopefully won't be too too common. |
cuviper
commented
Jan 18, 2019
Oh, I forgot that compiler-builtins is now pulled from crates.io -- then yeah, it could control what it publishes from the monorepo. Anyway, my first build as-is with MSVC cl was fine. I'm trying again with clang-cl as appveyor does. |
Well, I can't reproduce the issue with clang-cl either. If anyone else has a ready Windows system to try it, I would appreciate some debugging help. |
retep998
commented
Jan 21, 2019
Did you remember to |
cuviper
commented
Jan 21, 2019
Yes, I just double-checked config.toml to make sure I had Another thing I noticed is appveyor's use of |
nikic
commented
Jan 21, 2019
@cuviper Another thing to check would be whether you have |
cuviper
commented
Jan 21, 2019
OK, I matched more config settings, and this time got a dialog about a failed assertion: (If there's a way to get windows/appveyor to show that on the console instead, we should...) That assertion is: classMDNode : publicMetadata {
//...const MDOperand &getOperand(unsigned I) const {
assert(I < NumOperands && "Out of range");
returnop_begin()[I];
}I'll try to get that in a debugger... |
I have already tried building Rust against a newer LLVM version but that fails for me due to LLVM commit eaa73537bb48767af73b2aa8b03eef00d1f6f7c8: Are there already patches to update Edit: Ah, it's actually part of this PR ;). Will give it a try. |
There was a problem hiding this comment.
Why would upgrading dlmalloc downgrade rand_core?
There was a problem hiding this comment.
Both of those rand_core versions are already in the dependency tree, and rand_chacha requires rand_core >= 0.2, < 0.4. I guess it's just a quirk of how cargo resolved this when making the other change. But rand_core 0.2.2 just re-exports from 0.3 anyway, so it doesn't really matter.
The new git submodule src/llvm-project is a monorepo replacing src/llvm
and src/tools/{clang,lld,lldb}. This also serves as a rebase for these
projects to the new 8.x branch from trunk.
The src/llvm-emscripten fork is unchanged for now.Remove usage of an old and removed wasm intrinsic
cuviper
commented
Jan 26, 2019
I rebased to avoid Cargo.lock conflicts. @bors r=alexcrichton |
bors
commented
Jan 26, 2019
📌 Commit 059ed4f has been approved by |
bors
commented
Jan 26, 2019
Rebase to the llvm-project monorepo
The new git submodule src/llvm-project is a monorepo replacing src/llvm
and src/tools/{clang,lld,lldb}. This also serves as a rebase for these
projects to the new 8.x branch from trunk.
The src/llvm-emscripten fork is unchanged for now.
r? @alexcrichtonbors
commented
Jan 26, 2019
☀️ Test successful - checks-travis, status-appveyor |
alexcrichton
commented
Jan 26, 2019
🎊 |
nikic
commented
Feb 1, 2019
Perf results are in: https://perf.rust-lang.org/compare.html?start=37d51aa8f3bca674a50eb7c6204deed6fb4dff80&end=9df043b543bb9bc3e50bc243811c58d52a3aefea&stat=instructions:u Looks like mostly minor improvements for simple crates / incremental. Only one regression in kekkac-opt that might be worth taking a glance at. |
Fix rust-lldb wrapper scripts. Currently the `rust-lldb` wrapper provided by Rust project is broken. The error messages it produces on launch are as follows: ``` warning: ignoring unknown option: --one-line-before-file=command script import "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/etc/lldb_rust_formatters.py" warning: ignoring unknown option: --one-line-before-file=type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust warning: ignoring unknown option: --one-line-before-file=type category enable Rust (lldb) target create "target/debug/nagare" Traceback (most recent call last): File "<string>", line 1, in <module> File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1481, in <module> class SBAddress(object): File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1647, in SBAddress __swig_getmethods__["module"] = GetModule NameError: name '__swig_getmethods__' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined ...etc. ``` The errors stem from two regressions: one caused by an LLVM upgrade and one caused by unintended upgrade to SWIG 4.0 (SWIG is a wrapper generator that is used to generate Python bindings for LLVM and LLDB.) (Edit: found the exact dates) The SWIG breakage happened because of a Homebrew version upgrade on `nightly-2019-05-01-x86_64-apple-darwin` and the LLVM breakage happened on `nightly-2019-01-27-x86_64-apple-darwin` (likely to have been caused by rust-lang#57675 ). The fix is to update the LLVM parameter syntax and to "downgrade" to SWIG 3.0.x. SWIG 3.0.x is not going to be supported by Homebrew forever, but should be good for now, until LLDB upgrades to support SWIG 4.0.0. Here's some more info about Homebrew support: Homebrew/homebrew-core#39929 & Homebrew/homebrew-core#40882 I'm going to send a bug & fix to LLDB about SWIG 4.0.0 to get the situation fixed in the future. It would be good to also backport this to beta, since it's such a small change, and will fix an obvious regression.
Fix rust-lldb wrapper scripts. Currently the `rust-lldb` wrapper provided by Rust project is broken. The error messages it produces on launch are as follows: ``` warning: ignoring unknown option: --one-line-before-file=command script import "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/etc/lldb_rust_formatters.py" warning: ignoring unknown option: --one-line-before-file=type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust warning: ignoring unknown option: --one-line-before-file=type category enable Rust (lldb) target create "target/debug/nagare" Traceback (most recent call last): File "<string>", line 1, in <module> File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1481, in <module> class SBAddress(object): File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1647, in SBAddress __swig_getmethods__["module"] = GetModule NameError: name '__swig_getmethods__' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined ...etc. ``` The errors stem from two regressions: one caused by an LLVM upgrade and one caused by unintended upgrade to SWIG 4.0 (SWIG is a wrapper generator that is used to generate Python bindings for LLVM and LLDB.) (Edit: found the exact dates) The SWIG breakage happened because of a Homebrew version upgrade on `nightly-2019-05-01-x86_64-apple-darwin` and the LLVM breakage happened on `nightly-2019-01-27-x86_64-apple-darwin` (likely to have been caused by rust-lang#57675 ). The fix is to update the LLVM parameter syntax and to "downgrade" to SWIG 3.0.x. SWIG 3.0.x is not going to be supported by Homebrew forever, but should be good for now, until LLDB upgrades to support SWIG 4.0.0. Here's some more info about Homebrew support: Homebrew/homebrew-core#39929 & Homebrew/homebrew-core#40882 I'm going to send a bug & fix to LLDB about SWIG 4.0.0 to get the situation fixed in the future. It would be good to also backport this to beta, since it's such a small change, and will fix an obvious regression.
Fix rust-lldb wrapper scripts. Currently the `rust-lldb` wrapper provided by Rust project is broken. The error messages it produces on launch are as follows: ``` warning: ignoring unknown option: --one-line-before-file=command script import "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/etc/lldb_rust_formatters.py" warning: ignoring unknown option: --one-line-before-file=type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust warning: ignoring unknown option: --one-line-before-file=type category enable Rust (lldb) target create "target/debug/nagare" Traceback (most recent call last): File "<string>", line 1, in <module> File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1481, in <module> class SBAddress(object): File "/Users/kon/.rustup/toolchains/nightly-2019-05-02-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/python2.7/site-packages/lldb/__init__.py", line 1647, in SBAddress __swig_getmethods__["module"] = GetModule NameError: name '__swig_getmethods__' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'run_one_line' is not defined ...etc. ``` The errors stem from two regressions: one caused by an LLVM upgrade and one caused by unintended upgrade to SWIG 4.0 (SWIG is a wrapper generator that is used to generate Python bindings for LLVM and LLDB.) (Edit: found the exact dates) The SWIG breakage happened because of a Homebrew version upgrade on `nightly-2019-05-01-x86_64-apple-darwin` and the LLVM breakage happened on `nightly-2019-01-27-x86_64-apple-darwin` (likely to have been caused by #57675 ). The fix is to update the LLVM parameter syntax and to "downgrade" to SWIG 3.0.x. SWIG 3.0.x is not going to be supported by Homebrew forever, but should be good for now, until LLDB upgrades to support SWIG 4.0.0. Here's some more info about Homebrew support: Homebrew/homebrew-core#39929 & Homebrew/homebrew-core#40882 I'm going to send a bug & fix to LLDB about SWIG 4.0.0 to get the situation fixed in the future. It would be good to also backport this to beta, since it's such a small change, and will fix an obvious regression.

The new git submodule src/llvm-project is a monorepo replacing src/llvm
and src/tools/{clang,lld,lldb}. This also serves as a rebase for these
projects to the new 8.x branch from trunk.
The src/llvm-emscripten fork is unchanged for now.
r? @alexcrichton