Closed DontBelieveMe closed 2 years ago
[2022-01-11 16:21:28.319] [general] [info] Creating module from 'C:\helix\testsuite\f5\f5004-legalise-struct-initialisers.c' [2022-01-11 16:21:28.320] [driver] [trace] End frontend compilation [2022-01-11 16:21:28.321] [driver] [trace] Begin middle & backend compilation [2022-01-11 16:21:28.321] [pass_manager] [trace] Registered pass (1) 'genlegal' - [Generic] Legalise illegal constructs IR to a legal equivilant [2022-01-11 16:21:28.321] [pass_manager] [trace] Registered pass (2) 'structslegal' - [Generic] Legalise loading & storing struct types to/from virtual registers [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (3) 'retcomb' - [Generic] Combine multiple returns into a singular exit point [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (4) 'genlower' - [Generic] Lower high level IR constructs [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (5) 'consthoist' - [ARM] Split and hoist constants to a form compatible with the ARM [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (6) 'cconv' - [ARM] Lower IR to be compatible with the platform calling convention [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (7) 'lowerallocastructs' - [Generic] Lower the stack allocations of structs to arrays [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (8) 'regalloc' - [ARM] Register allocation [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (9) 'match' - [ARM] Matches the IR to it's machine instructions and generates machine IR [2022-01-11 16:21:28.322] [pass_manager] [trace] Registered pass (10) 'emit' - [ARM] Matches the IR to it's machine instructions and emits it as assembly to a file [2022-01-11 16:21:28.322] [pass_manager] [trace] Pass: genlegal [2022-01-11 16:21:28.323] [pass_manager] [trace] Validating pass 'genlegal' [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [pass_manager] [trace] Pass: structslegal [2022-01-11 16:21:28.323] [pass_manager] [trace] Validating pass 'structslegal' [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.323] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [pass_manager] [trace] Pass: retcomb [2022-01-11 16:21:28.324] [pass_manager] [trace] Validating pass 'retcomb' [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.324] [validate] [warning] instruction 'lfa' has no validation rules, ignoring [2022-01-11 16:21:28.325] [pass_manager] [trace] Pass: genlower [2022-01-11 16:21:28.325] [genlower] [debug] Found 5 instructions that require lowering [2022-01-11 16:21:28.325] [pass_manager] [trace] Validating pass 'genlower' [2022-01-11 16:21:28.325] [pass_manager] [trace] Pass: consthoist [2022-01-11 16:21:28.325] [pass_manager] [trace] Validating pass 'consthoist' [2022-01-11 16:21:28.325] [pass_manager] [trace] Pass: cconv [2022-01-11 16:21:28.325] [critical] ******************** Internal Compiler Error ******************** [2022-01-11 16:21:28.325] [critical] Assertion Failed! [2022-01-11 16:21:28.325] [critical] [2022-01-11 16:21:28.325] [critical] File: C:\helix\src\lower.cpp [2022-01-11 16:21:28.325] [critical] Line: 379 [2022-01-11 16:21:28.325] [critical] Function: Helix::CConv::Execute [2022-01-11 16:21:28.326] [critical] Condition: ARMv7::TypeSize(returnValue->GetType()) <= r0Size [2022-01-11 16:21:28.326] [critical] Reason: return value can't fit in output register [2022-01-11 16:21:28.326] [critical] ******************** Internal Compiler Error ********************