-
Notifications
You must be signed in to change notification settings - Fork 15k
Closed
Labels
backend:X86backend:X86 Scheduler ModelsAccuracy of X86 scheduler modelsAccuracy of X86 scheduler modelsbugzillaIssues migrated from bugzillaIssues migrated from bugzilla
Description
Bugzilla Link | 42569 |
Version | trunk |
OS | Linux |
Blocks | #4440 |
CC | @Aaron1011,@topperc,@efriedma-quic,@fhahn,@RKSimon,@MatzeB,@nickdesaulniers,@qcolombet,@zygoloid,@rotateright |
Extended Description
One file in the linux kernel produces an internal error from the register allocator. I reduced the test case to this:
typedef int (*tune_freq_func_t)(int , void * tuneargs);
static struct {
int power_up;
int power_down;
tune_freq_func_t fm_tune_freq;
tune_freq_func_t am_tune_freq;
int fm_rsq_status;
int agc_status;
int intb_pin_cfg;
} a[1];
int b, c;
int fn1(void) { return a[c].fm_tune_freq(b, fn1); }
$ clang-9 -m32 -mregparm=3 -O2 -fno-strict-overflow -c si476x-cmd.c
error: ran out of registers during register allocation
1 error generated.
Metadata
Metadata
Assignees
Labels
backend:X86backend:X86 Scheduler ModelsAccuracy of X86 scheduler modelsAccuracy of X86 scheduler modelsbugzillaIssues migrated from bugzillaIssues migrated from bugzilla