Skip to content

AVX-512: Unable to copy EFLAGS physical register! #38151

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
llvmbot opened this issue Sep 1, 2018 · 7 comments
Closed

AVX-512: Unable to copy EFLAGS physical register! #38151

llvmbot opened this issue Sep 1, 2018 · 7 comments
Labels
backend:X86 bugzilla Issues migrated from bugzilla

Comments

@llvmbot
Copy link
Member

llvmbot commented Sep 1, 2018

Bugzilla Link 38803
Resolution FIXED
Resolved on Oct 19, 2018 12:14
Version 7.0
OS Linux
Blocks #38454
Attachments tab.cpp
Reporter LLVM Bugzilla Contributor
CC @chandlerc,@topperc,@francisvm,@RKSimon,@tstellar
Fixed by commit(s) r343443 r343428 r344804 r344805

Extended Description

We've got a bug report from one of our users attempting to build Chromium using clang. The build is failing for him with the following error message:

fatal error: error in backend: Unable to copy EFLAGS physical register!
x86_64-pc-linux-gnu-clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)

I'm attaching a minimal test case prepared by Sergei Trofimovich:

// $ clang++ -march=skylake-avx512 -O2 tab.cpp
// fatal error: error in backend: Unable to copy EFLAGS physical register!
bool a();
int b, c;
float d;

float fn2() {
int e = a();
double f = e ? 0.75f : 0;
if (c)
d = e ? 0 : b;
return f;
}

I was able to reproduce the issue with today's LLVM+Clang trunk.

@topperc
Copy link
Collaborator

topperc commented Sep 30, 2018

The error message is a red herring. It's actually hitting an llvm_unreachable if you use a debug build.

Cannot emit physreg copy instruction
UNREACHABLE executed at lib/Target/X86/X86InstrInfo.cpp:3122!

@topperc
Copy link
Collaborator

topperc commented Oct 1, 2018

Fixed in r343443

@RKSimon
Copy link
Collaborator

RKSimon commented Oct 1, 2018

Merge into 7.0.1?

@topperc
Copy link
Collaborator

topperc commented Oct 1, 2018

Reopening and marking block 7.0.1

@topperc
Copy link
Collaborator

topperc commented Oct 1, 2018

We should probably also take r343428 into 7.0.1 so we stop getting misleading bug titles.

@tstellar
Copy link
Collaborator

Merged: r344804 r344805

@tstellar
Copy link
Collaborator

mentioned in issue #38454

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend:X86 bugzilla Issues migrated from bugzilla
Projects
None yet
Development

No branches or pull requests

4 participants