Test name | Component | Compiler exit code | Expected compiler exit code | Compiled program code | Expected compiled program code | Memory accesses | Max memory accesses | Result | Compiler Log | Simulator errors |
fibonacci |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
int |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
intintint |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
single_comment |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multi_comment |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
nested_comments |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
all_tokens |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
escape_codes_1 |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
escape_codes_2 |
lexer |
250 |
250 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multiple_characters_in_single_quotes |
lexer |
250 |
250 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
char_assign_digits |
lexer |
250 |
250 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
most_chars |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
no_main |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
minimal |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
undefined_token |
lexer |
250 |
250 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
identifiers |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
includes |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
preprocessing |
lexer |
250 |
250 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
division |
lexer |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
fibonacci |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetic interpreter |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
sort linked list |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
int |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
single_comment |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multi_comment |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
nested_comments |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
escape_codes_1 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
most_chars |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
no_main |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
minimal |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
just_main |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
identifiers |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
includes |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
break |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
continue |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
break_without_semicolon |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
continue_without_semicolon |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
while_loop_1 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
while_loop_2 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
while_loop_3 |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
unterminated_stmt |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_application_1 |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_application_2 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_application_3 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_application_4 |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_declaration |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_declaration_without_semicolon |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_declaration_malformed |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_decl_def_and_struct |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_application_5 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
count_to_n |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
declarations |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
missing_declarations |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
double_declarations |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
reserved_keyword_as_identifier |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
program_ends_with_single_comment |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty_functions_1 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty_functions_2 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty_comparison |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
else_if |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetic_1 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetic_2 |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
broken_arithmetic |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_error |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
all_syntax_categories |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
all_syntax_categories_with_spaces |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
all_syntax_categories_compact |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
type_error |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
identifier_missing_type |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
nested_conditional_statements |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
empty_conditional |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
if_empty_body |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
statements_as_expressions |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
deep_body_nesting |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
variable_initialization |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
returning_multiple_times |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
else |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_wrong |
parser |
124 |
245 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
struct_usage |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_declaration |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
ternary_comparison |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
pointer_pointer |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
pointer_dereference |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_pointer_dereference |
parser |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
double_reference |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
type_cast |
parser |
245 |
245 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
Test name | Component | Compiler exit code | Expected compiler exit code | Compiled program code | Expected compiled program code | Memory accesses | Max memory accesses | Result | Compiler Log | Simulator errors |
fibonacci |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
loop break continue |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
escaped chars |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetic interpreter |
ast |
224 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
sort linked list |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_plus |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_plus_mul |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_parentheses |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_modulo |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_division |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
unary_operator_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
unary_operator_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_call_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_call_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
return_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
return_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
return_3 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
return_4 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
nested_blocks_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
nested_blocks_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
blocks_in_sequence |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_s |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_c_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_c_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_i_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_i_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_c |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_i |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
while_loop |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
while_forever |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
if |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
if_else |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
if_else_if_else |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
if_if_else |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
procedure_declaration_1 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
procedure_declaration_2 |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
procedure_declarations |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_variable_declaration |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_variable_declarations |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_variable_declaration |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_variable_declarations |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
includes |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
minimal |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_use |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
strliteral |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
pointers_and_arrays_and_structs |
ast |
224 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
struct_decl |
ast |
224 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
assignment_expression |
ast |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
fibonacci |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetic interpreter |
sem |
240 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
sort linked list |
sem |
240 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
pass array with correct size |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
pass array with incorrect size |
sem |
0 |
240 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
pass array with incorrect dims |
sem |
0 |
240 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
minimal |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_declaration_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
duplicate_global_declarations_1 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
duplicate_global_declarations_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
many_duplicate_global_declarations |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_shadowing_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_shadowing_2 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_shadowing_3 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_shadowing_4 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_shadowing_5 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_shadowing_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_shadowing_2 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
mutual_recursion |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
undeclared_function_1 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
undeclared_function_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
undeclared_parameter |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_s |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_i |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
print_c |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_i |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
read_c |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_variable_assignment_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
global_variable_assignment_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_variable_assignment_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
local_variable_assignment_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
void_variable |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
main_return_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
main_return_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arity_mismatch_1 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arity_mismatch_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_returns_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_returns_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
arithmetics_3 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
function_call_1 |
sem |
0 |
240 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
function_call_2 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
conditional_1 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
conditional_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
conditional_3 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
conditional_4 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
shadowing_6 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
shadowing_7 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
shadowing_12 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
valid_lvalues |
sem |
245 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
invalid_lvalue |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_delc |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_delc_and_use |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
struct_nesting |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_expression_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_expression_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
assignment_expression_3 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multidim_array_decl |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multidim_array_access_1 |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
multidim_array_access_2 |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
Test name | Component | Compiler exit code | Expected compiler exit code | Compiled program code | Expected compiled program code | Memory accesses | Max memory accesses | Result | Compiler Log | Simulator errors |
array_complex_reduction_8 |
regalloc |
0 |
0 |
260 |
0 |
72 |
51 + 10% |
Fail |
|
|
arithmetic_chain_short_hoisted |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
balanced_arithmetic_tree_large |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
arithmetic_chains_long |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
balanced_addition_tree_small_hoisted |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
array_simple_reduction_1 |
regalloc |
0 |
0 |
0 |
0 |
86 |
88 + 10% |
Pass |
|
|
array_complex_reduction_2 |
regalloc |
0 |
0 |
0 |
0 |
67 |
77 + 10% |
Pass |
|
|
array_complex_reduction_3 |
regalloc |
0 |
0 |
0 |
0 |
45 |
45 + 10% |
Pass |
|
|
balanced_arithmetic_tree_small_hoisted |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
array_complex_reduction_12 |
regalloc |
0 |
0 |
0 |
0 |
48 |
50 + 10% |
Pass |
|
|
arithmetic_chains_short_hoisted |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
arithmetic_chain_long_hoisted |
regalloc |
0 |
0 |
0 |
0 |
11 |
14 + 10% |
Pass |
|
|
array_simple_reduction_4 |
regalloc |
0 |
0 |
0 |
0 |
22 |
22 + 10% |
Pass |
|
|
balanced_addition_tree_large_hoisted |
regalloc |
0 |
0 |
0 |
0 |
83 |
86 + 10% |
Pass |
|
|
array_complex_reduction_4 |
regalloc |
0 |
0 |
0 |
0 |
25 |
25 + 10% |
Pass |
|
|
array_complex_reduction_6 |
regalloc |
0 |
0 |
0 |
0 |
73 |
75 + 10% |
Pass |
|
|
addition_chain_long |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
arithmetic_chains_short |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
array_multiplication_table_sum |
regalloc |
0 |
0 |
0 |
0 |
37 |
37 + 10% |
Pass |
|
|
array_simple_reduction_2 |
regalloc |
0 |
0 |
0 |
0 |
16 |
16 + 10% |
Pass |
|
|
hello_world |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
int_literals |
regalloc |
0 |
0 |
0 |
0 |
24 |
24 + 10% |
Pass |
|
|
nested_whiles |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
shadowing |
regalloc |
0 |
0 |
0 |
0 |
48 |
52 + 10% |
Pass |
|
|
arithmetics |
regalloc |
0 |
0 |
0 |
0 |
4 |
4 + 10% |
Pass |
|
|
character_comparison |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
branching_1 |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
branching_2 |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
branching_3 |
regalloc |
0 |
0 |
0 |
0 |
16 |
16 + 10% |
Pass |
|
|
count_down_from_n |
regalloc |
0 |
0 |
0 |
0 |
12 |
12 + 10% |
Pass |
|
|
count_to_n |
regalloc |
0 |
0 |
0 |
0 |
12 |
12 + 10% |
Pass |
|
|
global_variable |
regalloc |
0 |
0 |
0 |
0 |
6 |
6 + 10% |
Pass |
|
|
function_call |
regalloc |
0 |
0 |
0 |
0 |
17 |
17 + 10% |
Pass |
|
|
read_c |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
read_i |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
struct access |
regalloc |
0 |
0 |
0 |
0 |
8 |
8 + 10% |
Pass |
|
|
funcall with struct |
regalloc |
0 |
0 |
0 |
0 |
39 |
39 + 10% |
Pass |
|
|
cashmachine |
regalloc |
0 |
0 |
0 |
0 |
473 |
803 + 10% |
Pass |
|
|
dec2bin |
regalloc |
0 |
0 |
0 |
0 |
138 |
194 + 10% |
Pass |
|
|
fibonacci |
regalloc |
0 |
0 |
0 |
0 |
24 |
24 + 10% |
Pass |
|
|
factorial |
regalloc |
0 |
0 |
0 |
0 |
56 |
70 + 10% |
Pass |
|
|
is_leap_year |
regalloc |
0 |
0 |
0 |
0 |
28 |
28 + 10% |
Pass |
|
|
is_palindromic |
regalloc |
0 |
0 |
0 |
0 |
20 |
20 + 10% |
Pass |
|
|
is_prime |
regalloc |
0 |
0 |
230 |
0 |
N/A |
46 |
Fail |
|
|
pascals_triangle |
regalloc |
0 |
0 |
0 |
0 |
95 |
131 + 10% |
Pass |
|
|
tictactoe |
regalloc |
0 |
0 |
230 |
0 |
N/A |
671 |
Fail |
|
Exception in thread "MIPS" java.lang.NullPointerException: Cannot invoke "String.trim()" because "input" is null
at mars.util.SystemIO.readInteger(SystemIO.java:102)
at mars.mips.instructions.syscalls.SyscallReadInt.simulate(SyscallReadInt.java:57)
at mars.mips.instructions.InstructionSet.findAndSimulateSyscall(InstructionSet.java:3241)
at mars.mips.instructions.InstructionSet.access$200(InstructionSet.java:47)
at mars.mips.instructions.InstructionSet$63.simulate(InstructionSet.java:1196)
at mars.simulator.Simulator$SimThread.construct(Simulator.java:346)
at mars.simulator.SwingWorker$2.run(SwingWorker.java:115)
at java.base/java.lang.Thread.run(Thread.java:1583)
Program terminated when maximum step limit -1 reached.
|
towers_of_hanoi |
regalloc |
0 |
0 |
0 |
0 |
84 |
104 + 10% |
Pass |
|
|
binary_search |
regalloc |
0 |
0 |
0 |
0 |
59 |
67 + 10% |
Pass |
|
|
Test name | Component | Compiler exit code | Expected compiler exit code | Compiled program code | Expected compiled program code | Memory accesses | Max memory accesses | Result | Compiler Log | Simulator errors |
single class declaration |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
extend class not yet declared |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class extend other class |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class method overriding |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class field overriding |
sem |
0 |
240 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
simple class instantiation |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class instantiation without cast |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class instantiation with cast |
sem |
240 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
instantiation undeclared class |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
field access simple |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
field access inherited |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
field access undeclared |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
field access multiple |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class function call overrided |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class function call and field access |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class function call undeclared |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class function call inherited |
sem |
0 |
0 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class type casting with field access and function call |
sem |
240 |
0 |
N/A |
N/A |
N/A |
N/A |
Fail |
|
|
class type casting with invalid field access |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
class type casting with invalid function call |
sem |
240 |
240 |
N/A |
N/A |
N/A |
N/A |
Pass |
|
|
simple_class |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_polymorphism |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_polymorphism_typecast |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_inheritance1 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
Error in /tmp/tmps1jabfzx.asm line 132: Runtime exception at 0x00400180: address out of range 0x00000000
Processing terminated due to errors.
|
class_code_gen_inheritance2 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_reference1 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_reference2 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
Error in /tmp/tmplzqti_5o.asm line 126: Runtime exception at 0x0040016c: address out of range 0x00000000
Processing terminated due to errors.
|
class_code_gen_reference3 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
Error in /tmp/tmp4mrz1ntv.asm line 179: Runtime exception at 0x00400228: address out of range 0x00000000
Processing terminated due to errors.
|
class_code_gen_reference4 |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_call1 |
gen |
245 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_call2 |
gen |
245 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_call_reference |
gen |
245 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_call_typecast |
gen |
245 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_call_poly |
gen |
1 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
java.lang.Throwable:
java.base/java.util.Objects.requireNonNull(Objects.java:233)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:43)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:61)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:84)
gen.ProgramCodeGen.generate(ProgramCodeGen.java:23)
gen.CodeGenerator.emitProgram(CodeGenerator.java:56)
Main4.compile(Main4.java:235)
Main4.main(Main4.java:72)
|
|
class_code_gen_inheritance_field |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_inheritance_function |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_shadow_field |
gen |
1 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
java.lang.Throwable:
java.base/java.util.Objects.requireNonNull(Objects.java:233)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:43)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:61)
gen.MemAllocCodeGen.visitChildren(MemAllocCodeGen.java:37)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:120)
gen.MemAllocCodeGen.visit(MemAllocCodeGen.java:84)
gen.ProgramCodeGen.generate(ProgramCodeGen.java:23)
gen.CodeGenerator.emitProgram(CodeGenerator.java:56)
Main4.compile(Main4.java:235)
Main4.main(Main4.java:72)
|
|
class_code_gen_fields1 |
gen |
0 |
0 |
230 |
0 |
N/A |
N/A |
Fail |
|
Error in /tmp/tmp_nw230gz.asm line 97: Runtime exception at 0x004000fc: address out of range 0x00000000
Processing terminated due to errors.
|
class_code_gen_fields2 |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|
class_code_gen_function_inherited |
gen |
240 |
0 |
0 |
0 |
N/A |
N/A |
Fail |
|
|