Skip to content

Rustc 1.12.0 Windows build of ethcore crate fails with LLVM error #36924

Closed
@rphmeier

Description

@rphmeier
Contributor

Error produced:

EH pad must be jumped to via an unwind edge
  %cleanuppad13 = cleanuppad within none []
  br i1 %1927, label %bb99, label %bb102_cleanup_trampoline_bb99, !dbg !719592

As seen here: https://ci.appveyor.com/project/NikolayVolf/parity-g802m/build/1.3.0+1997#L640
Triggered by this update from 1.10.0 to 1.12.0: https://github.com/ethcore/parity/pull/2423

Either LLVM is broken or the generated IR is.
Feel free to change the title to something more descriptive. Unfortunately I haven't got a windows machine for testing, just the one broken appveyor build.

Activity

changed the title [-]Rustc 1.12.0 Windows build of `ethcore` crate [/-] [+]Rustc 1.12.0 Windows build of `ethcore` crate fails with LLVM error[/+] on Oct 3, 2016
added
regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.
T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.
on Oct 3, 2016
alexcrichton

alexcrichton commented on Oct 3, 2016

@alexcrichton
Member

Historically most of these have been LLVM bugs, unfortunately, which are notoriously hard to track down. @rphmeier do you know if it'd be possible to minimize the test case at all?

rphmeier

rphmeier commented on Oct 3, 2016

@rphmeier
ContributorAuthor

@alexcrichton yikes, I have no idea to be honest. Like I said, I haven't got a windows machine to test with and the test case as it stands is about 10-15k LoC on its own...

self-assigned this
on Oct 3, 2016
nikomatsakis

nikomatsakis commented on Oct 4, 2016

@nikomatsakis
Contributor

This may well be related to MIR, as well.

cc @rust-lang/compiler

rphmeier

rphmeier commented on Oct 4, 2016

@rphmeier
ContributorAuthor

Confirmed a MIR issue: build succeeds with RUSTFLAGS= -Zorbit=off
https://ci.appveyor.com/project/NikolayVolf/parity-g802m/build/1.3.0+2055

added
A-MIRArea: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
on Oct 4, 2016
nikomatsakis

nikomatsakis commented on Oct 4, 2016

@nikomatsakis
Contributor

@rphmeier I am trying to get a windows setup up and going to test this and other reported problems (my previous Windows VM recently mysteriously lost its Network Driver and I've never been able to figure out how to get it back...). Any tips you can give me for reproducing it? I guess just a vanilla x86_64 MSVC configuration?

rphmeier

rphmeier commented on Oct 4, 2016

@rphmeier
ContributorAuthor

@nikomatsakis Thanks for looking into this. A vanilla x86_64 MSVC setup sounds right. The appveyor.yml contains a few additional setup steps which you might find useful: https://github.com/ethcore/parity/blob/master/appveyor.yml

nikomatsakis

nikomatsakis commented on Oct 5, 2016

@nikomatsakis
Contributor

So I am able to reproduce this. Interestingly, debug builds don't seem to encounter the issue.

nikomatsakis

nikomatsakis commented on Oct 5, 2016

@nikomatsakis
Contributor

Huh, somewhat frustratingly, this...stopped reproducing for now. Not sure what is different now!

22 remaining items

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-MIRArea: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.htmlP-highHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    No branches or pull requests

      Participants

      @alexcrichton@brson@nikomatsakis@majnemer@arielb1

      Issue actions

        Rustc 1.12.0 Windows build of `ethcore` crate fails with LLVM error · Issue #36924 · rust-lang/rust