From 64bced930f63f597b3d079c80365475a8d2b8896 Mon Sep 17 00:00:00 2001 From: Google JSIR Bot Date: Wed, 1 Jul 2026 14:29:24 -0700 Subject: [PATCH] #cleanup Change test prefix from JSHIR to JSIR. PiperOrigin-RevId: 941297121 --- .../tests/and/output.generated.txt | 508 +++++++++--------- .../tests/and/run.generated.lit | 2 +- .../tests/break/output.generated.txt | 232 ++++---- .../tests/break/run.generated.lit | 2 +- .../tests/conditional/output.generated.txt | 464 ++++++++-------- .../tests/conditional/run.generated.lit | 2 +- .../tests/continue/output.generated.txt | 336 ++++++------ .../tests/continue/run.generated.lit | 2 +- .../tests/do_while/output.generated.txt | 326 +++++------ .../tests/do_while/run.generated.lit | 2 +- .../tests/for/output.generated.txt | 226 ++++---- .../tests/for/run.generated.lit | 2 +- .../tests/for_in/output.generated.txt | 326 +++++------ .../tests/for_in/run.generated.lit | 2 +- .../tests/for_of/output.generated.txt | 272 +++++----- .../tests/for_of/run.generated.lit | 2 +- .../tests/function/output.generated.txt | 234 ++++---- .../tests/function/run.generated.lit | 2 +- .../tests/if/output.generated.txt | 138 ++--- .../tests/if/run.generated.lit | 2 +- .../tests/if_var_dead/output.generated.txt | 190 +++---- .../tests/if_var_dead/run.generated.lit | 2 +- .../tests/if_var_unknown/output.generated.txt | 190 +++---- .../tests/if_var_unknown/run.generated.lit | 2 +- .../tests/label/output.generated.txt | 346 ++++++------ .../tests/label/run.generated.lit | 2 +- .../tests/literal/output.generated.txt | 128 ++--- .../tests/literal/run.generated.lit | 2 +- .../nullish_coalesce/output.generated.txt | 508 +++++++++--------- .../tests/nullish_coalesce/run.generated.lit | 2 +- .../tests/obfuscated/output.generated.txt | 442 +++++++-------- .../tests/obfuscated/run.generated.lit | 2 +- .../tests/or/output.generated.txt | 508 +++++++++--------- .../tests/or/run.generated.lit | 2 +- .../tests/simple/output.generated.txt | 74 +-- .../tests/simple/run.generated.lit | 2 +- .../tests/simple_symbol/output.generated.txt | 120 ++--- .../tests/simple_symbol/run.generated.lit | 2 +- .../tests/switch/output.generated.txt | 398 +++++++------- .../tests/switch/run.generated.lit | 2 +- .../tests/test_config.json | 2 +- .../tests/try_catch/output.generated.txt | 362 ++++++------- .../tests/try_catch/run.generated.lit | 2 +- .../tests/undeclared_var/output.generated.txt | 120 ++--- .../tests/undeclared_var/run.generated.lit | 2 +- .../update_expression/output.generated.txt | 246 ++++----- .../tests/update_expression/run.generated.lit | 2 +- .../tests/void_0/output.generated.txt | 98 ++-- .../tests/void_0/run.generated.lit | 2 +- .../tests/while/output.generated.txt | 326 +++++------ .../tests/while/run.generated.lit | 2 +- .../tests/while_dead/output.generated.txt | 226 ++++---- .../tests/while_dead/run.generated.lit | 2 +- .../tests/array_expression/jshir.mlir | 26 +- .../conversion/tests/array_expression/run.lit | 2 +- .../conversion/tests/array_pattern/jshir.mlir | 30 +- .../ir/conversion/tests/array_pattern/run.lit | 2 +- .../arrow_function_expression/jshir.mlir | 44 +- .../tests/arrow_function_expression/run.lit | 2 +- .../tests/binary_expression/jshir.mlir | 24 +- .../tests/binary_expression/run.lit | 2 +- .../tests/block_statement/jshir.mlir | 28 +- .../conversion/tests/block_statement/run.lit | 2 +- .../js/ir/conversion/tests/break/jshir.mlir | 100 ++-- maldoca/js/ir/conversion/tests/break/run.lit | 2 +- .../tests/call_expression/jshir.mlir | 32 +- .../conversion/tests/call_expression/run.lit | 2 +- .../tests/class_declaration/jshir.mlir | 134 ++--- .../tests/class_declaration/run.lit | 2 +- .../tests/class_expression/jshir.mlir | 138 ++--- .../conversion/tests/class_expression/run.lit | 2 +- .../js/ir/conversion/tests/comment/jshir.mlir | 20 +- .../js/ir/conversion/tests/comment/run.lit | 2 +- .../tests/conditional_expression/jshir.mlir | 30 +- .../tests/conditional_expression/run.lit | 2 +- .../tests/continue_statement/jshir.mlir | 94 ++-- .../tests/continue_statement/run.lit | 2 +- .../tests/debugger_statement/jshir.mlir | 14 +- .../tests/debugger_statement/run.lit | 2 +- .../tests/directive_literal/jshir.mlir | 16 +- .../tests/directive_literal/run.lit | 2 +- .../tests/do_while_statement/jshir.mlir | 48 +- .../tests/do_while_statement/run.lit | 2 +- .../tests/empty_statement/jshir.mlir | 14 +- .../conversion/tests/empty_statement/run.lit | 2 +- .../tests/export_declaration/jshir.mlir | 40 +- .../tests/export_declaration/run.lit | 2 +- .../tests/for_in_statement/jshir.mlir | 36 +- .../conversion/tests/for_in_statement/run.lit | 2 +- .../tests/for_of_statement/jshir.mlir | 56 +- .../conversion/tests/for_of_statement/run.lit | 2 +- .../conversion/tests/for_statement/jshir.mlir | 94 ++-- .../ir/conversion/tests/for_statement/run.lit | 2 +- .../tests/function_declaration/jshir.mlir | 62 +-- .../tests/function_declaration/run.lit | 2 +- .../conversion/tests/if_statement/jshir.mlir | 48 +- .../ir/conversion/tests/if_statement/run.lit | 2 +- .../tests/import_declaration/jshir.mlir | 20 +- .../tests/import_declaration/run.lit | 2 +- .../tests/interpreter_directive/jshir.mlir | 14 +- .../tests/interpreter_directive/run.lit | 2 +- .../tests/labeled_statement/jshir.mlir | 28 +- .../tests/labeled_statement/run.lit | 2 +- .../js/ir/conversion/tests/literal/jshir.mlir | 36 +- .../js/ir/conversion/tests/literal/run.lit | 2 +- .../tests/load_store_identifier/jshir.mlir | 24 +- .../tests/load_store_identifier/run.lit | 2 +- .../tests/logical_expression/jshir.mlir | 48 +- .../tests/logical_expression/run.lit | 2 +- .../tests/member_expression/jshir.mlir | 48 +- .../tests/member_expression/run.lit | 2 +- .../conversion/tests/meta_property/jshir.mlir | 16 +- .../ir/conversion/tests/meta_property/run.lit | 2 +- .../tests/new_expression/jshir.mlir | 26 +- .../conversion/tests/new_expression/run.lit | 2 +- .../tests/object_expression/jshir.mlir | 106 ++-- .../tests/object_expression/run.lit | 2 +- .../tests/object_pattern/jshir.mlir | 52 +- .../conversion/tests/object_pattern/run.lit | 2 +- .../optional_member_expression/jshir.mlir | 42 +- .../tests/optional_member_expression/run.lit | 2 +- .../tests/parenthesized_expression/jshir.mlir | 32 +- .../tests/parenthesized_expression/run.lit | 2 +- .../js/ir/conversion/tests/run.lit.template | 2 +- .../tests/switch_statement/jshir.mlir | 132 ++--- .../conversion/tests/switch_statement/run.lit | 2 +- .../tests/tagged_template/jshir.mlir | 24 +- .../conversion/tests/tagged_template/run.lit | 2 +- .../ir/conversion/tests/template/jshir.mlir | 32 +- .../js/ir/conversion/tests/template/run.lit | 2 +- .../js/ir/conversion/tests/test_config.json | 2 +- .../tests/throw_statement/jshir.mlir | 16 +- .../conversion/tests/throw_statement/run.lit | 2 +- .../conversion/tests/try_statement/jshir.mlir | 132 ++--- .../ir/conversion/tests/try_statement/run.lit | 2 +- .../tests/unary_expression/jshir.mlir | 18 +- .../conversion/tests/unary_expression/run.lit | 2 +- .../tests/update_expression/jshir.mlir | 18 +- .../tests/update_expression/run.lit | 2 +- .../tests/variable_declaration/jshir.mlir | 54 +- .../tests/variable_declaration/run.lit | 2 +- .../tests/while_statement/jshir.mlir | 26 +- .../conversion/tests/while_statement/run.lit | 2 +- .../tests/with_statement/jshir.mlir | 44 +- .../conversion/tests/with_statement/run.lit | 2 +- .../tests/yield_expression/jshir.mlir | 44 +- .../conversion/tests/yield_expression/run.lit | 2 +- maldoca/js/ir/generate_tests.py | 2 +- 148 files changed, 4828 insertions(+), 4828 deletions(-) diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/and/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/and/output.generated.txt index 5e1e5d5f..c1037423 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/and/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/and/output.generated.txt @@ -1,254 +1,254 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 93, 96, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 109, 112, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 125, 128, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () -// JSHIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 141, 144, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %17 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %20 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %17 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %20 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"c"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"x"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %20 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"d"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"x"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %20 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 93, 96, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"a"} -// JSHIR-NEXT: // %2 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 109, 112, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"b"} -// JSHIR-NEXT: // %6 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"console"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 125, 128, 0, "log">} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier {"c"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.call_expression (%9, %10) -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%11) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier {"console"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 141, 144, 0, "log">} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.identifier {"d"} -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.call_expression (%13, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "&&"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 93, 96, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 109, 112, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 125, 128, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () +// JSIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 141, 144, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.boolean_literal {false} +// JSIR-NEXT: // %17 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {true} +// JSIR-NEXT: // %20 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.boolean_literal {true} +// JSIR-NEXT: // %17 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {false} +// JSIR-NEXT: // %20 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"c"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"x"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {true} +// JSIR-NEXT: // %20 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"d"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"x"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"&&"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {false} +// JSIR-NEXT: // %20 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 93, 96, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"a"} +// JSIR-NEXT: // %2 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 109, 112, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"b"} +// JSIR-NEXT: // %6 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"console"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 125, 128, 0, "log">} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier {"c"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.call_expression (%9, %10) +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%11) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier {"console"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 141, 144, 0, "log">} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.identifier {"d"} +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.call_expression (%13, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/and/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/and/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/and/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/and/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/break/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/break/output.generated.txt index efcd74b6..f676e917 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/break/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/break/output.generated.txt @@ -1,116 +1,116 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 54, 57, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %4 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.break_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 54, 57, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 54, 57, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %5 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.boolean_literal {true} +// JSIR-NEXT: // %4 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.break_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %5 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 54, 57, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/break/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/break/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/break/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/break/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/conditional/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/conditional/output.generated.txt index 4faf35a6..dbcf2105 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/conditional/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/conditional/output.generated.txt @@ -1,232 +1,232 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 6.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 72, 75, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 88, 91, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 104, 107, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %13 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jshir.conditional_expression (%13) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %16 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %14 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.variable_declarator (%12, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %13 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jshir.conditional_expression (%13) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} -// JSHIR-NEXT: // %16 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %14 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.variable_declarator (%12, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier_ref {"c"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.identifier {"x"} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jshir.conditional_expression (%13) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 6.000000e+00 : f64} -// JSHIR-NEXT: // %16 = 6.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.numeric_literal {#jsir, 5.000000e+00 : f64} -// JSHIR-NEXT: // %16 = 5.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%16) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.variable_declarator (%12, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 72, 75, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"a"} -// JSHIR-NEXT: // %2 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 88, 91, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"b"} -// JSHIR-NEXT: // %6 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"console"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 104, 107, 0, "log">} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier {"c"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.call_expression (%9, %10) -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%11) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %12 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jshir.conditional_expression"(%13) ({ +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 6.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %16 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%16) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %15 = "jsir.variable_declarator"(%12, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 72, 75, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 88, 91, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 104, 107, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.boolean_literal {true} +// JSIR-NEXT: // %13 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jshir.conditional_expression (%13) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %16 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %14 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.variable_declarator (%12, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.boolean_literal {false} +// JSIR-NEXT: // %13 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jshir.conditional_expression (%13) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} +// JSIR-NEXT: // %16 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %14 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.variable_declarator (%12, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier_ref {"c"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.identifier {"x"} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jshir.conditional_expression (%13) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 6.000000e+00 : f64} +// JSIR-NEXT: // %16 = 6.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.numeric_literal {#jsir, 5.000000e+00 : f64} +// JSIR-NEXT: // %16 = 5.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%16) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.variable_declarator (%12, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 72, 75, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"a"} +// JSIR-NEXT: // %2 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 88, 91, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"b"} +// JSIR-NEXT: // %6 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"console"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 104, 107, 0, "log">} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier {"c"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.call_expression (%9, %10) +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%11) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/conditional/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/conditional/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/conditional/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/conditional/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/continue/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/continue/output.generated.txt index 2de4d8c6..b0de1278 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/continue/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/continue/output.generated.txt @@ -1,168 +1,168 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+01 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "<"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.update_expression"(%4) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: "jshir.continue_statement"() : () -> () -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 73, 76, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.for_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"i"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"i"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+01 : f64} -// JSHIR-NEXT: // %5 = 1.000000e+01 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.binary_expression (%4, %5) {"<"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"i"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.update_expression (%4) {"++", false} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.continue_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 73, 76, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+01 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "<"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.update_expression"(%4) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: "jshir.continue_statement"() : () -> () +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 73, 76, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %5 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.for_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"i"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %5 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"i"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+01 : f64} +// JSIR-NEXT: // %5 = 1.000000e+01 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.binary_expression (%4, %5) {"<"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"i"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.update_expression (%4) {"++", false} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.continue_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} +// JSIR-NEXT: // %5 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 73, 76, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/continue/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/continue/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/continue/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/continue/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/do_while/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/do_while/output.generated.txt index d01bf89b..04086057 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/do_while/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/do_while/output.generated.txt @@ -1,163 +1,163 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.do_while_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.assignment_expression"(%8, %11) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%12) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "z"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 61, 64, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 77, 80, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %9 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.variable_declarator (%8, %9) -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%10) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"y"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %9 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.variable_declarator (%8, %9) -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%10) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.do_while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.identifier {"x"} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %10 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.assignment_expression (%8, %11) {"="} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%12) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"z"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%8) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 61, 64, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 77, 80, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"y"} -// JSHIR-NEXT: // %6 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.do_while_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.assignment_expression"(%8, %11) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%12) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "z"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%8) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 61, 64, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 77, 80, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %9 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.variable_declarator (%8, %9) +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%10) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"y"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %9 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.variable_declarator (%8, %9) +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%10) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.do_while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.identifier {"x"} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %10 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.assignment_expression (%8, %11) {"="} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%12) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"z"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%8) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 61, 64, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 77, 80, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"y"} +// JSIR-NEXT: // %6 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/do_while/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/do_while/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/do_while/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/do_while/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/for/output.generated.txt index b6346bbe..44176a05 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for/output.generated.txt @@ -1,113 +1,113 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+01 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "<"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.update_expression"(%0) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 39, 42, 1, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.for_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"i"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.variable_declarator (%0, %1) -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"i"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+01 : f64} -// JSHIR-NEXT: // %1 = 1.000000e+01 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"<"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"i"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.update_expression (%0) {"++", false} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%1) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 39, 42, 1, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"i"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+01 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "<"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.update_expression"(%0) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 39, 42, 1, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "i"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.for_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"i"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %1 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.variable_declarator (%0, %1) +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"i"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+01 : f64} +// JSIR-NEXT: // %1 = 1.000000e+01 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"<"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"i"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.update_expression (%0) {"++", false} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%1) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 39, 42, 1, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"i"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/for/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for_in/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/for_in/output.generated.txt index 70d38203..9dee8742 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for_in/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for_in/output.generated.txt @@ -1,163 +1,163 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.variable_declarator"(%6, %7) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "key"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "object"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_in_statement"(%0, %1) <{left_declaration = #jsir, , 16, 23, 1, , , 20, 23, 1, "key", 0, "var">}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.member_expression"(%6) <{literal_property = #jsir, , "log", 47, 50, 2, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "key"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.call_expression"(%7, %8) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.member_expression"(%10) <{literal_property = #jsir, , "log", 67, 70, 2, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.identifier"() <{name = "object"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.identifier"() <{name = "key"}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.member_expression"(%12, %13) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.call_expression"(%11, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.binary_expression"(%17, %18) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %20 = "jsir.assignment_expression"(%16, %19) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "log", 108, 111, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.call_expression"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier_ref {"y"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %7 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.variable_declarator (%6, %7) -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%8) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"key"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier {"object"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.for_in_statement (%0, %1) {#jsir, , 16, 23, 1, , , 20, 23, 1, "key", 0, "var">} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"console"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.member_expression (%6) {#jsir, , "log", 47, 50, 2, "log">} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"key"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.call_expression (%7, %8) -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%9) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier {"console"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.member_expression (%10) {#jsir, , "log", 67, 70, 2, "log">} -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier {"object"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.identifier {"key"} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.member_expression (%12, %13) -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.call_expression (%11, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"y"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"y"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %18 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.binary_expression (%17, %18) {"+"} -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.assignment_expression (%16, %19) {"="} -// JSHIR-NEXT: // %20 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"console"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.member_expression (%2) {#jsir, , "log", 108, 111, 0, "log">} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"y"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.call_expression (%3, %4) -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.variable_declarator"(%6, %7) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%8) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "key"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "object"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_in_statement"(%0, %1) <{left_declaration = #jsir, , 16, 23, 1, , , 20, 23, 1, "key", 0, "var">}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.member_expression"(%6) <{literal_property = #jsir, , "log", 47, 50, 2, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "key"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.call_expression"(%7, %8) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.member_expression"(%10) <{literal_property = #jsir, , "log", 67, 70, 2, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.identifier"() <{name = "object"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.identifier"() <{name = "key"}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jsir.member_expression"(%12, %13) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %15 = "jsir.call_expression"(%11, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %19 = "jsir.binary_expression"(%17, %18) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %20 = "jsir.assignment_expression"(%16, %19) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "log", 108, 111, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.call_expression"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier_ref {"y"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %7 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.variable_declarator (%6, %7) +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%8) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"key"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier {"object"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.for_in_statement (%0, %1) {#jsir, , 16, 23, 1, , , 20, 23, 1, "key", 0, "var">} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"console"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.member_expression (%6) {#jsir, , "log", 47, 50, 2, "log">} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"key"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.call_expression (%7, %8) +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%9) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier {"console"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.member_expression (%10) {#jsir, , "log", 67, 70, 2, "log">} +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier {"object"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.identifier {"key"} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.member_expression (%12, %13) +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.call_expression (%11, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"y"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"y"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %18 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.binary_expression (%17, %18) {"+"} +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.assignment_expression (%16, %19) {"="} +// JSIR-NEXT: // %20 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"console"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.member_expression (%2) {#jsir, , "log", 108, 111, 0, "log">} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"y"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.call_expression (%3, %4) +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for_in/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/for_in/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for_in/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for_in/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for_of/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/for_of/output.generated.txt index 79b26a89..b074bc6b 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for_of/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for_of/output.generated.txt @@ -1,136 +1,136 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.variable_declarator"(%6, %7) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "array"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_of_statement"(%0, %1) <{await = false, left_declaration = #jsir, , 16, 21, 1, , , 20, 21, 1, "x", 0, "var">}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.member_expression"(%6) <{literal_property = #jsir, , "log", 44, 47, 2, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.call_expression"(%7, %8) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () -// JSHIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.binary_expression"(%11, %12) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.assignment_expression"(%10, %13) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%14) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "log", 75, 78, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.call_expression"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier_ref {"y"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %7 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.variable_declarator (%6, %7) -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%8) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier {"array"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.for_of_statement (%0, %1) {false, #jsir, , 16, 21, 1, , , 20, 21, 1, "x", 0, "var">} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"console"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.member_expression (%6) {#jsir, , "log", 44, 47, 2, "log">} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"x"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.call_expression (%7, %8) -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%9) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier_ref {"y"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.identifier {"y"} -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %12 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.binary_expression (%11, %12) {"+"} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.assignment_expression (%10, %13) {"="} -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%14) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"console"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.member_expression (%2) {#jsir, , "log", 75, 78, 0, "log">} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"y"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.call_expression (%3, %4) -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.variable_declarator"(%6, %7) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%8) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "array"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_of_statement"(%0, %1) <{await = false, left_declaration = #jsir, , 16, 21, 1, , , 20, 21, 1, "x", 0, "var">}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.member_expression"(%6) <{literal_property = #jsir, , "log", 44, 47, 2, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.call_expression"(%7, %8) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () +// JSIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %12 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.binary_expression"(%11, %12) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %14 = "jsir.assignment_expression"(%10, %13) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%14) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "log", 75, 78, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.call_expression"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier_ref {"y"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %7 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.variable_declarator (%6, %7) +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%8) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier {"array"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.for_of_statement (%0, %1) {false, #jsir, , 16, 21, 1, , , 20, 21, 1, "x", 0, "var">} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"console"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.member_expression (%6) {#jsir, , "log", 44, 47, 2, "log">} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"x"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.call_expression (%7, %8) +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%9) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier_ref {"y"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.identifier {"y"} +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %12 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.binary_expression (%11, %12) {"+"} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.assignment_expression (%10, %13) {"="} +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%14) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"console"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.member_expression (%2) {#jsir, , "log", 75, 78, 0, "log">} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"y"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.call_expression (%3, %4) +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/for_of/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/for_of/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/for_of/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/for_of/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/function/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/function/output.generated.txt index cf94c2ed..700a9c5b 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/function/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/function/output.generated.txt @@ -1,117 +1,117 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "foo", 9, 12, 1, "foo">}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "arg"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %1 = "jsir.identifier_ref"() <{name = "is_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.variable_declarator"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %1 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "arg"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.variable_declarator"(%1, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "is_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.function_declaration {false, false, #jsir, , "foo", 9, 12, 1, "foo">} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"arg"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%0) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier_ref {"is_a_const"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %2 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.variable_declarator (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier_ref {"not_a_const"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"arg"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %3 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.binary_expression (%2, %3) {"+"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.variable_declarator (%1, %4) -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"is_a_const"} -// JSHIR-NEXT: // %0 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.return_statement (%0) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "foo", 9, 12, 1, "foo">}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "arg"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %1 = "jsir.identifier_ref"() <{name = "is_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.variable_declarator"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %1 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "arg"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %5 = "jsir.variable_declarator"(%1, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "is_a_const"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.function_declaration {false, false, #jsir, , "foo", 9, 12, 1, "foo">} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"arg"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%0) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier_ref {"is_a_const"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %2 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.variable_declarator (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier_ref {"not_a_const"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"arg"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %3 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.binary_expression (%2, %3) {"+"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.variable_declarator (%1, %4) +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"is_a_const"} +// JSIR-NEXT: // %0 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.return_statement (%0) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/function/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/function/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/function/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/function/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/if/output.generated.txt index e6b1a3ce..fbcacd66 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if/output.generated.txt @@ -1,69 +1,69 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "=="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%4) ({ -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %0 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} -// JSHIR-NEXT: // %2 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %3 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.binary_expression (%2, %3) {"=="} -// JSHIR-NEXT: // %4 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.if_statement (%4) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier {"a"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier {"b"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "=="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%4) ({ +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %0 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %1 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} +// JSIR-NEXT: // %2 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %3 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.binary_expression (%2, %3) {"=="} +// JSIR-NEXT: // %4 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.if_statement (%4) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier {"a"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier {"b"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/if/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/output.generated.txt index e3c64c8a..aaaa84e5 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/output.generated.txt @@ -1,95 +1,95 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 44, 58, " Should be 1">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.variable_declarator"(%2) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%0) ({ -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[#jsir, , 44, 58, " Should be 1">]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.variable_declarator (%2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %0 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.if_statement (%0) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %3 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier {"a"} -// JSHIR-NEXT: // %1 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%1) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = [#jsir, , 44, 58, " Should be 1">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.variable_declarator"(%2) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%0) ({ +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[#jsir, , 44, 58, " Should be 1">]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.variable_declarator (%2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.boolean_literal {true} +// JSIR-NEXT: // %0 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.if_statement (%0) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %3 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier {"a"} +// JSIR-NEXT: // %1 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%1) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_dead/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/output.generated.txt index c47b32b6..bf3622ad 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/output.generated.txt @@ -1,95 +1,95 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 41, 62, " Should be unknown.">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.variable_declarator"(%2) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%0) ({ -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[#jsir, , 41, 62, " Should be unknown.">]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.variable_declarator (%2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"x"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.if_statement (%0) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %3 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %3 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier {"a"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%1) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = [#jsir, , 41, 62, " Should be unknown.">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.variable_declarator"(%2) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%0) ({ +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.assignment_expression"(%2, %3) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[#jsir, , 41, 62, " Should be unknown.">]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.variable_declarator (%2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"x"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.if_statement (%0) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %3 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %3 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.assignment_expression (%2, %3) {"="} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier {"a"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%1) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/if_var_unknown/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/label/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/label/output.generated.txt index 9ac80b05..c03ec2f2 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/label/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/label/output.generated.txt @@ -1,173 +1,173 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "my_label", 11, 19, 0, "my_label">}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %10 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%10) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "my_label", 72, 80, 4, "my_label">}> : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %7 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.assignment_expression"(%7, %8) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 105, 108, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.labeled_statement {#jsir, , "my_label", 11, 19, 0, "my_label">} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %4 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %10 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%10) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.break_statement {#jsir, , "my_label", 72, 80, 4, "my_label">} -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %8 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.assignment_expression (%7, %8) {"="} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%9) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 105, 108, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "my_label", 11, 19, 0, "my_label">}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %10 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%10) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "my_label", 72, 80, 4, "my_label">}> : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %7 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.assignment_expression"(%7, %8) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 105, 108, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %5 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.labeled_statement {#jsir, , "my_label", 11, 19, 0, "my_label">} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.boolean_literal {true} +// JSIR-NEXT: // %4 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %5 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.boolean_literal {true} +// JSIR-NEXT: // %10 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%10) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.break_statement {#jsir, , "my_label", 72, 80, 4, "my_label">} +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %8 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.assignment_expression (%7, %8) {"="} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%9) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 105, 108, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/label/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/label/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/label/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/label/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/literal/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/literal/output.generated.txt index 2ea1fa13..4a032181 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/literal/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/literal/output.generated.txt @@ -1,64 +1,64 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.reg_exp_literal"() <{extra = #jsir, flags = "", pattern = "1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.null_literal"() : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: %5 = "jsir.big_int_literal"() <{extra = #jsir, value = "1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.reg_exp_literal {#jsir, "", "1"} -// JSHIR-NEXT: // %0 = #jsir -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%0) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.null_literal -// JSHIR-NEXT: // %1 = #jsir.null_literal -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%1) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.string_literal {#jsir, "a"} -// JSHIR-NEXT: // %2 = "a" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %3 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %4 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.big_int_literal {#jsir, "1"} -// JSHIR-NEXT: // %5 = #jsir -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.reg_exp_literal"() <{extra = #jsir, flags = "", pattern = "1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.null_literal"() : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: %5 = "jsir.big_int_literal"() <{extra = #jsir, value = "1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.reg_exp_literal {#jsir, "", "1"} +// JSIR-NEXT: // %0 = #jsir +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%0) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.null_literal +// JSIR-NEXT: // %1 = #jsir.null_literal +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%1) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.string_literal {#jsir, "a"} +// JSIR-NEXT: // %2 = "a" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.boolean_literal {true} +// JSIR-NEXT: // %3 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %4 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.big_int_literal {#jsir, "1"} +// JSIR-NEXT: // %5 = #jsir +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/literal/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/literal/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/literal/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/literal/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/output.generated.txt index c55f63e2..09969340 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/output.generated.txt @@ -1,254 +1,254 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.null_literal"() : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ -// JSHIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ -// JSHIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.200000e+01 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ -// JSHIR-NEXT: %20 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ -// JSHIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for d"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 119, 122, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 135, 138, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 151, 154, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () -// JSHIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 167, 170, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.null_literal -// JSHIR-NEXT: // %17 = #jsir.null_literal -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.string_literal {#jsir, "default for a"} -// JSHIR-NEXT: // %20 = "default for a" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = "default for a" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.string_literal {#jsir, ""} -// JSHIR-NEXT: // %17 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.string_literal {#jsir, "default for b"} -// JSHIR-NEXT: // %20 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"c"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.numeric_literal {#jsir, 4.200000e+01 : f64} -// JSHIR-NEXT: // %17 = 4.200000e+01 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %20 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = 4.200000e+01 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"d"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"x"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.string_literal {#jsir, "default for d"} -// JSHIR-NEXT: // %20 = "default for d" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 119, 122, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"a"} -// JSHIR-NEXT: // %2 = "default for a" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 135, 138, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"b"} -// JSHIR-NEXT: // %6 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"console"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 151, 154, 0, "log">} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier {"c"} -// JSHIR-NEXT: // %10 = 4.200000e+01 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.call_expression (%9, %10) -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%11) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier {"console"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 167, 170, 0, "log">} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.identifier {"d"} -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.call_expression (%13, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.null_literal"() : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ +// JSIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ +// JSIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.200000e+01 : f64}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ +// JSIR-NEXT: %20 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "??"}> ({ +// JSIR-NEXT: %20 = "jsir.string_literal"() <{extra = #jsir, value = "default for d"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 119, 122, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 135, 138, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 151, 154, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () +// JSIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 167, 170, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.null_literal +// JSIR-NEXT: // %17 = #jsir.null_literal +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.string_literal {#jsir, "default for a"} +// JSIR-NEXT: // %20 = "default for a" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = "default for a" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.string_literal {#jsir, ""} +// JSIR-NEXT: // %17 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.string_literal {#jsir, "default for b"} +// JSIR-NEXT: // %20 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"c"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.numeric_literal {#jsir, 4.200000e+01 : f64} +// JSIR-NEXT: // %17 = 4.200000e+01 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %20 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = 4.200000e+01 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"d"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"x"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"??"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.string_literal {#jsir, "default for d"} +// JSIR-NEXT: // %20 = "default for d" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 119, 122, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"a"} +// JSIR-NEXT: // %2 = "default for a" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 135, 138, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"b"} +// JSIR-NEXT: // %6 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"console"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 151, 154, 0, "log">} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier {"c"} +// JSIR-NEXT: // %10 = 4.200000e+01 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.call_expression (%9, %10) +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%11) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier {"console"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 167, 170, 0, "log">} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.identifier {"d"} +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.call_expression (%13, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/nullish_coalesce/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/output.generated.txt index d2db8b5e..0a6badcc 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/output.generated.txt @@ -1,221 +1,221 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 27, 31, " s">, #jsir, , 62, 66, " e">, #jsir, , 87, 91, " l">, #jsir, , 112, 116, " l">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.parenthesized_expression"(%2) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.binary_expression"(%6, %7) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.member_expression"(%3, %8) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.string_literal"() <{extra = #jsir, value = "h"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.unary_expression"(%12) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.binary_expression"(%13, %14) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %16 = "jsir.parenthesized_expression"(%15) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jsir.unary_expression"(%17) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %20 = "jsir.unary_expression"(%19) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %21 = "jsir.binary_expression"(%18, %20) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %22 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %23 = "jsir.unary_expression"(%22) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %24 = "jsir.binary_expression"(%21, %23) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %25 = "jsir.member_expression"(%16, %24) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %26 = "jsir.binary_expression"(%11, %25) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %27 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %28 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any -// JSHIR-NEXT: %29 = "jsir.binary_expression"(%27, %28) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %30 = "jsir.parenthesized_expression"(%29) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %31 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %32 = "jsir.unary_expression"(%31) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %33 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %34 = "jsir.unary_expression"(%33) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %35 = "jsir.binary_expression"(%32, %34) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %36 = "jsir.member_expression"(%30, %35) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %37 = "jsir.binary_expression"(%26, %36) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %38 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %39 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any -// JSHIR-NEXT: %40 = "jsir.binary_expression"(%38, %39) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %41 = "jsir.parenthesized_expression"(%40) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %42 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %43 = "jsir.unary_expression"(%42) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %44 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %45 = "jsir.unary_expression"(%44) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %46 = "jsir.binary_expression"(%43, %45) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %47 = "jsir.member_expression"(%41, %46) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %48 = "jsir.binary_expression"(%37, %47) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%48) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[#jsir, , 27, 31, " s">, #jsir, , 62, 66, " e">, #jsir, , 87, 91, " l">, #jsir, , 112, 116, " l">]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %0 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.string_literal {#jsir, ""} -// JSHIR-NEXT: // %1 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} -// JSHIR-NEXT: // %2 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.parenthesized_expression (%2) -// JSHIR-NEXT: // %3 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %4 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %5 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.binary_expression (%4, %5) {"+"} -// JSHIR-NEXT: // %6 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %7 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.binary_expression (%6, %7) {"+"} -// JSHIR-NEXT: // %8 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.member_expression (%3, %8) -// JSHIR-NEXT: // %9 = "s" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.string_literal {#jsir, "h"} -// JSHIR-NEXT: // %10 = "h" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} -// JSHIR-NEXT: // %11 = "sh" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %12 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.unary_expression (%12) {"!", true} -// JSHIR-NEXT: // %13 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.string_literal {#jsir, ""} -// JSHIR-NEXT: // %14 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.binary_expression (%13, %14) {"+"} -// JSHIR-NEXT: // %15 = "true" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.parenthesized_expression (%15) -// JSHIR-NEXT: // %16 = "true" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %17 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jsir.unary_expression (%17) {"!", true} -// JSHIR-NEXT: // %18 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %19 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.unary_expression (%19) {"!", true} -// JSHIR-NEXT: // %20 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %21 = jsir.binary_expression (%18, %20) {"+"} -// JSHIR-NEXT: // %21 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %22 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %22 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %23 = jsir.unary_expression (%22) {"!", true} -// JSHIR-NEXT: // %23 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %24 = jsir.binary_expression (%21, %23) {"+"} -// JSHIR-NEXT: // %24 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %25 = jsir.member_expression (%16, %24) -// JSHIR-NEXT: // %25 = "e" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %26 = jsir.binary_expression (%11, %25) {"+"} -// JSHIR-NEXT: // %26 = "she" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %27 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %27 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %28 = jsir.string_literal {#jsir, ""} -// JSHIR-NEXT: // %28 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %29 = jsir.binary_expression (%27, %28) {"+"} -// JSHIR-NEXT: // %29 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %30 = jsir.parenthesized_expression (%29) -// JSHIR-NEXT: // %30 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %31 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %31 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %32 = jsir.unary_expression (%31) {"!", true} -// JSHIR-NEXT: // %32 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %33 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %33 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %34 = jsir.unary_expression (%33) {"!", true} -// JSHIR-NEXT: // %34 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %35 = jsir.binary_expression (%32, %34) {"+"} -// JSHIR-NEXT: // %35 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %36 = jsir.member_expression (%30, %35) -// JSHIR-NEXT: // %36 = "l" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %37 = jsir.binary_expression (%26, %36) {"+"} -// JSHIR-NEXT: // %37 = "shel" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %38 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %38 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %39 = jsir.string_literal {#jsir, ""} -// JSHIR-NEXT: // %39 = "" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %40 = jsir.binary_expression (%38, %39) {"+"} -// JSHIR-NEXT: // %40 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %41 = jsir.parenthesized_expression (%40) -// JSHIR-NEXT: // %41 = "false" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %42 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %42 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %43 = jsir.unary_expression (%42) {"!", true} -// JSHIR-NEXT: // %43 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %44 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %44 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %45 = jsir.unary_expression (%44) {"!", true} -// JSHIR-NEXT: // %45 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %46 = jsir.binary_expression (%43, %45) {"+"} -// JSHIR-NEXT: // %46 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %47 = jsir.member_expression (%41, %46) -// JSHIR-NEXT: // %47 = "l" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %48 = jsir.binary_expression (%37, %47) {"+"} -// JSHIR-NEXT: // %48 = "shell" -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%48) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = [#jsir, , 27, 31, " s">, #jsir, , 62, 66, " e">, #jsir, , 87, 91, " l">, #jsir, , 112, 116, " l">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.parenthesized_expression"(%2) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %7 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.binary_expression"(%6, %7) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %9 = "jsir.member_expression"(%3, %8) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.string_literal"() <{extra = #jsir, value = "h"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.unary_expression"(%12) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %14 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.binary_expression"(%13, %14) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %16 = "jsir.parenthesized_expression"(%15) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %17 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jsir.unary_expression"(%17) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %20 = "jsir.unary_expression"(%19) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %21 = "jsir.binary_expression"(%18, %20) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %22 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %23 = "jsir.unary_expression"(%22) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %24 = "jsir.binary_expression"(%21, %23) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %25 = "jsir.member_expression"(%16, %24) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %26 = "jsir.binary_expression"(%11, %25) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %27 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %28 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any +// JSIR-NEXT: %29 = "jsir.binary_expression"(%27, %28) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %30 = "jsir.parenthesized_expression"(%29) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %31 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %32 = "jsir.unary_expression"(%31) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %33 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %34 = "jsir.unary_expression"(%33) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %35 = "jsir.binary_expression"(%32, %34) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %36 = "jsir.member_expression"(%30, %35) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %37 = "jsir.binary_expression"(%26, %36) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %38 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %39 = "jsir.string_literal"() <{extra = #jsir, value = ""}> : () -> !jsir.any +// JSIR-NEXT: %40 = "jsir.binary_expression"(%38, %39) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %41 = "jsir.parenthesized_expression"(%40) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %42 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %43 = "jsir.unary_expression"(%42) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %44 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %45 = "jsir.unary_expression"(%44) <{operator_ = "!", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %46 = "jsir.binary_expression"(%43, %45) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %47 = "jsir.member_expression"(%41, %46) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %48 = "jsir.binary_expression"(%37, %47) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%48) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[#jsir, , 27, 31, " s">, #jsir, , 62, 66, " e">, #jsir, , 87, 91, " l">, #jsir, , 112, 116, " l">]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.boolean_literal {false} +// JSIR-NEXT: // %0 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.string_literal {#jsir, ""} +// JSIR-NEXT: // %1 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} +// JSIR-NEXT: // %2 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.parenthesized_expression (%2) +// JSIR-NEXT: // %3 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.boolean_literal {true} +// JSIR-NEXT: // %4 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.boolean_literal {true} +// JSIR-NEXT: // %5 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.binary_expression (%4, %5) {"+"} +// JSIR-NEXT: // %6 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.boolean_literal {true} +// JSIR-NEXT: // %7 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.binary_expression (%6, %7) {"+"} +// JSIR-NEXT: // %8 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.member_expression (%3, %8) +// JSIR-NEXT: // %9 = "s" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.string_literal {#jsir, "h"} +// JSIR-NEXT: // %10 = "h" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} +// JSIR-NEXT: // %11 = "sh" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.boolean_literal {false} +// JSIR-NEXT: // %12 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.unary_expression (%12) {"!", true} +// JSIR-NEXT: // %13 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.string_literal {#jsir, ""} +// JSIR-NEXT: // %14 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.binary_expression (%13, %14) {"+"} +// JSIR-NEXT: // %15 = "true" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.parenthesized_expression (%15) +// JSIR-NEXT: // %16 = "true" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %17 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jsir.unary_expression (%17) {"!", true} +// JSIR-NEXT: // %18 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %19 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.unary_expression (%19) {"!", true} +// JSIR-NEXT: // %20 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %21 = jsir.binary_expression (%18, %20) {"+"} +// JSIR-NEXT: // %21 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %22 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %22 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %23 = jsir.unary_expression (%22) {"!", true} +// JSIR-NEXT: // %23 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %24 = jsir.binary_expression (%21, %23) {"+"} +// JSIR-NEXT: // %24 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %25 = jsir.member_expression (%16, %24) +// JSIR-NEXT: // %25 = "e" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %26 = jsir.binary_expression (%11, %25) {"+"} +// JSIR-NEXT: // %26 = "she" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %27 = jsir.boolean_literal {false} +// JSIR-NEXT: // %27 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %28 = jsir.string_literal {#jsir, ""} +// JSIR-NEXT: // %28 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %29 = jsir.binary_expression (%27, %28) {"+"} +// JSIR-NEXT: // %29 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %30 = jsir.parenthesized_expression (%29) +// JSIR-NEXT: // %30 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %31 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %31 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %32 = jsir.unary_expression (%31) {"!", true} +// JSIR-NEXT: // %32 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %33 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %33 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %34 = jsir.unary_expression (%33) {"!", true} +// JSIR-NEXT: // %34 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %35 = jsir.binary_expression (%32, %34) {"+"} +// JSIR-NEXT: // %35 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %36 = jsir.member_expression (%30, %35) +// JSIR-NEXT: // %36 = "l" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %37 = jsir.binary_expression (%26, %36) {"+"} +// JSIR-NEXT: // %37 = "shel" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %38 = jsir.boolean_literal {false} +// JSIR-NEXT: // %38 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %39 = jsir.string_literal {#jsir, ""} +// JSIR-NEXT: // %39 = "" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %40 = jsir.binary_expression (%38, %39) {"+"} +// JSIR-NEXT: // %40 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %41 = jsir.parenthesized_expression (%40) +// JSIR-NEXT: // %41 = "false" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %42 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %42 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %43 = jsir.unary_expression (%42) {"!", true} +// JSIR-NEXT: // %43 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %44 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %44 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %45 = jsir.unary_expression (%44) {"!", true} +// JSIR-NEXT: // %45 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %46 = jsir.binary_expression (%43, %45) {"+"} +// JSIR-NEXT: // %46 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %47 = jsir.member_expression (%41, %46) +// JSIR-NEXT: // %47 = "l" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %48 = jsir.binary_expression (%37, %47) {"+"} +// JSIR-NEXT: // %48 = "shell" +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%48) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/obfuscated/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/or/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/or/output.generated.txt index 9ec791e1..0ad2ab61 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/or/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/or/output.generated.txt @@ -1,254 +1,254 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ -// JSHIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 93, 96, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 109, 112, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 125, 128, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () -// JSHIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 141, 144, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %17 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %20 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %17 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %20 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"c"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"x"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {true} -// JSHIR-NEXT: // %20 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.identifier_ref {"d"} -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.identifier {"x"} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %20 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %20 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%20) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.variable_declarator (%16, %18) -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 93, 96, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"a"} -// JSHIR-NEXT: // %2 = true -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 109, 112, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"b"} -// JSHIR-NEXT: // %6 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"console"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 125, 128, 0, "log">} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier {"c"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.call_expression (%9, %10) -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%11) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.identifier {"console"} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 141, 144, 0, "log">} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.identifier {"d"} -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.call_expression (%13, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %16 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %18 = "jshir.logical_expression"(%17) <{operator_ = "||"}> ({ +// JSIR-NEXT: %20 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%20) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %19 = "jsir.variable_declarator"(%16, %18) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 93, 96, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 109, 112, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.member_expression"(%8) <{literal_property = #jsir, , "log", 125, 128, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.call_expression"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%11) : (!jsir.any) -> () +// JSIR-NEXT: %12 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.member_expression"(%12) <{literal_property = #jsir, , "log", 141, 144, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %14 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.call_expression"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.boolean_literal {true} +// JSIR-NEXT: // %17 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {true} +// JSIR-NEXT: // %20 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.boolean_literal {false} +// JSIR-NEXT: // %17 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {false} +// JSIR-NEXT: // %20 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"c"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"x"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {true} +// JSIR-NEXT: // %20 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.identifier_ref {"d"} +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.identifier {"x"} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jshir.logical_expression (%17) {"||"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %20 = jsir.boolean_literal {false} +// JSIR-NEXT: // %20 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%20) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.variable_declarator (%16, %18) +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 93, 96, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"a"} +// JSIR-NEXT: // %2 = true +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 109, 112, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"b"} +// JSIR-NEXT: // %6 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"console"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.member_expression (%8) {#jsir, , "log", 125, 128, 0, "log">} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier {"c"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.call_expression (%9, %10) +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%11) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.identifier {"console"} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.member_expression (%12) {#jsir, , "log", 141, 144, 0, "log">} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.identifier {"d"} +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.call_expression (%13, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/or/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/or/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/or/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/or/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/simple/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/simple/output.generated.txt index 89cd31cd..0ee47017 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/simple/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/simple/output.generated.txt @@ -1,37 +1,37 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %0 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} -// JSHIR-NEXT: // %2 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %0 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %1 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} +// JSIR-NEXT: // %2 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/simple/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/simple/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/simple/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/simple/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/output.generated.txt index 3022e99a..8decb5e1 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/output.generated.txt @@ -1,60 +1,60 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %4 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.variable_declarator (%3, %4) -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"a"} -// JSHIR-NEXT: // %0 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} -// JSHIR-NEXT: // %2 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %4 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.variable_declarator (%3, %4) +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"a"} +// JSIR-NEXT: // %0 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %1 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.binary_expression (%0, %1) {"+"} +// JSIR-NEXT: // %2 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/simple_symbol/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/switch/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/switch/output.generated.txt index 8050a80a..4e578098 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/switch/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/switch/output.generated.txt @@ -1,199 +1,199 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.variable_declarator"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.switch_statement"(%0) ({ -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: "jsir.empty_statement"() : () -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.member_expression"(%1) <{literal_property = #jsir, , "log", 130, 133, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.call_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %6 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.variable_declarator (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"x"} -// JSHIR-NEXT: // %0 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.switch_statement (%0) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.switch_case ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.break_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.switch_case ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.switch_case ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 3.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} -// JSHIR-NEXT: // %6 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.break_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.switch_case ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.numeric_literal {#jsir, 5.000000e+00 : f64} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.break_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.empty_statement -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.identifier {"console"} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.member_expression (%1) {#jsir, , "log", 130, 133, 0, "log">} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.identifier {"x"} -// JSHIR-NEXT: // %3 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.call_expression (%2, %3) -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.variable_declarator"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.switch_statement"(%0) ({ +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: "jsir.empty_statement"() : () -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.member_expression"(%1) <{literal_property = #jsir, , "log", 130, 133, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.call_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %6 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.variable_declarator (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"x"} +// JSIR-NEXT: // %0 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.switch_statement (%0) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.switch_case ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %5 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.break_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.switch_case ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %5 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.switch_case ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %5 = 3.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} +// JSIR-NEXT: // %6 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.break_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.switch_case ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} +// JSIR-NEXT: // %5 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.numeric_literal {#jsir, 5.000000e+00 : f64} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.break_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.empty_statement +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.identifier {"console"} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.member_expression (%1) {#jsir, , "log", 130, 133, 0, "log">} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.identifier {"x"} +// JSIR-NEXT: // %3 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.call_expression (%2, %3) +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/switch/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/switch/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/switch/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/switch/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/test_config.json b/maldoca/js/ir/analyses/constant_propagation/tests/test_config.json index 37d0d462..05a993f6 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/test_config.json +++ b/maldoca/js/ir/analyses/constant_propagation/tests/test_config.json @@ -4,7 +4,7 @@ "output_file": "output.generated.txt", "passes": "source2ast,ast2hir", "jsir_analysis": "constant_propagation", - "prefix": "JSHIR" + "prefix": "JSIR" } ], "build_template": "../../BUILD.general.template" diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/output.generated.txt index cd9188c3..8de334aa 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/output.generated.txt @@ -1,181 +1,181 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.try_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "e"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.catch_clause"(%4) ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 80, 83, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.try_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 2.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"e"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.catch_clause (%4) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 80, 83, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = 4.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.try_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "e"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.catch_clause"(%4) ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 80, 83, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %5 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.try_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %5 = 2.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"e"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.catch_clause (%4) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.numeric_literal {#jsir, 3.000000e+00 : f64} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 4.000000e+00 : f64} +// JSIR-NEXT: // %5 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 80, 83, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = 4.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/try_catch/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/output.generated.txt index 9a2fc7aa..518643f7 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/output.generated.txt @@ -1,60 +1,60 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.assignment_expression (%0, %1) {"="} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.identifier_ref {"c"} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"a"} -// JSHIR-NEXT: // %4 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.variable_declarator (%3, %4) -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%5) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %1 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.assignment_expression (%0, %1) {"="} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.identifier_ref {"c"} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"a"} +// JSIR-NEXT: // %4 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.variable_declarator (%3, %4) +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%5) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/undeclared_var/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/output.generated.txt index 5865606c..aabdbc88 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/output.generated.txt @@ -1,123 +1,123 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.update_expression"(%3) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.update_expression"(%8) <{operator_ = "++", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () -// JSHIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "should_be_0"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.update_expression"(%11) <{operator_ = "--", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.assignment_expression"(%10, %12) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%13) : (!jsir.any) -> () -// JSHIR-NEXT: %14 = "jsir.identifier_ref"() <{name = "unknown"}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.identifier"() <{name = "getUnknown"}> : () -> !jsir.any -// JSHIR-NEXT: %16 = "jsir.call_expression"(%15) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.assignment_expression"(%14, %16) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%17) : (!jsir.any) -> () -// JSHIR-NEXT: %18 = "jsir.identifier_ref"() <{name = "unknown"}> : () -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.update_expression"(%18) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%19) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.assignment_expression (%0, %1) {"="} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%2) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.update_expression (%3) {"++", false} -// JSHIR-NEXT: // %4 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %6 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"b"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.update_expression (%8) {"++", true} -// JSHIR-NEXT: // %9 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%9) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.identifier_ref {"should_be_0"} -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.update_expression (%11) {"--", true} -// JSHIR-NEXT: // %12 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.assignment_expression (%10, %12) {"="} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%13) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.identifier_ref {"unknown"} -// JSHIR-NEXT: // %14 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.identifier {"getUnknown"} -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %16 = jsir.call_expression (%15) -// JSHIR-NEXT: // %16 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %17 = jsir.assignment_expression (%14, %16) {"="} -// JSHIR-NEXT: // %17 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%17) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %18 = jsir.identifier_ref {"unknown"} -// JSHIR-NEXT: // %18 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %19 = jsir.update_expression (%18) {"++", false} -// JSHIR-NEXT: // %19 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%19) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.update_expression"(%3) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: %5 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.assignment_expression"(%5, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.update_expression"(%8) <{operator_ = "++", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%9) : (!jsir.any) -> () +// JSIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "should_be_0"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %12 = "jsir.update_expression"(%11) <{operator_ = "--", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %13 = "jsir.assignment_expression"(%10, %12) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%13) : (!jsir.any) -> () +// JSIR-NEXT: %14 = "jsir.identifier_ref"() <{name = "unknown"}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.identifier"() <{name = "getUnknown"}> : () -> !jsir.any +// JSIR-NEXT: %16 = "jsir.call_expression"(%15) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %17 = "jsir.assignment_expression"(%14, %16) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%17) : (!jsir.any) -> () +// JSIR-NEXT: %18 = "jsir.identifier_ref"() <{name = "unknown"}> : () -> !jsir.any +// JSIR-NEXT: %19 = "jsir.update_expression"(%18) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%19) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %1 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.assignment_expression (%0, %1) {"="} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%2) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.update_expression (%3) {"++", false} +// JSIR-NEXT: // %4 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %6 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.assignment_expression (%5, %6) {"="} +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"b"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.update_expression (%8) {"++", true} +// JSIR-NEXT: // %9 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%9) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.identifier_ref {"should_be_0"} +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.update_expression (%11) {"--", true} +// JSIR-NEXT: // %12 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.assignment_expression (%10, %12) {"="} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%13) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.identifier_ref {"unknown"} +// JSIR-NEXT: // %14 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.identifier {"getUnknown"} +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %16 = jsir.call_expression (%15) +// JSIR-NEXT: // %16 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %17 = jsir.assignment_expression (%14, %16) {"="} +// JSIR-NEXT: // %17 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%17) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %18 = jsir.identifier_ref {"unknown"} +// JSIR-NEXT: // %18 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %19 = jsir.update_expression (%18) {"++", false} +// JSIR-NEXT: // %19 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%19) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/update_expression/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/void_0/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/void_0/output.generated.txt index 0c2cf4b0..c587bffc 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/void_0/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/void_0/output.generated.txt @@ -1,49 +1,49 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.unary_expression"(%1) <{operator_ = "void", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.variable_declarator"(%0, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier_ref {"a"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} -// JSHIR-NEXT: // %1 = 0.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.unary_expression (%1) {"void", true} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.variable_declarator (%0, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.unary_expression"(%1) <{operator_ = "void", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.variable_declarator"(%0, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier_ref {"a"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.numeric_literal {#jsir, 0.000000e+00 : f64} +// JSIR-NEXT: // %1 = 0.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.unary_expression (%1) {"void", true} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.variable_declarator (%0, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/void_0/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/void_0/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/void_0/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/void_0/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/while/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/while/output.generated.txt index 4aa6e078..61d645c7 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/while/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/while/output.generated.txt @@ -1,163 +1,163 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 53, " TODO(b/217662731): `is_a_const` should be a const.">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.identifier"() <{name = "not_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.assignment_expression"(%8, %11) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%12) : (!jsir.any) -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %13 = "jsir.identifier_ref"() <{name = "is_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.variable_declarator"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 153, 156, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "not_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 179, 182, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "is_a_const"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[#jsir, , 0, 53, " TODO(b/217662731): `is_a_const` should be a const.">]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"not_a_const"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %9 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.variable_declarator (%8, %9) -// JSHIR-NEXT: // %10 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%10) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier {"x"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%8) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %8 = jsir.identifier_ref {"not_a_const"} -// JSHIR-NEXT: // %8 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %9 = jsir.identifier {"not_a_const"} -// JSHIR-NEXT: // %9 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %10 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %10 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} -// JSHIR-NEXT: // %11 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %12 = jsir.assignment_expression (%8, %11) {"="} -// JSHIR-NEXT: // %12 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%12) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %13 = jsir.identifier_ref {"is_a_const"} -// JSHIR-NEXT: // %13 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %14 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %14 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %15 = jsir.variable_declarator (%13, %14) -// JSHIR-NEXT: // %15 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%15) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 153, 156, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"not_a_const"} -// JSHIR-NEXT: // %2 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier {"console"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 179, 182, 0, "log">} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.identifier {"is_a_const"} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %7 = jsir.call_expression (%5, %6) -// JSHIR-NEXT: // %7 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%7) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 53, " TODO(b/217662731): `is_a_const` should be a const.">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.variable_declarator"(%8, %9) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%10) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%8) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "not_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.identifier"() <{name = "not_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.binary_expression"(%9, %10) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.assignment_expression"(%8, %11) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%12) : (!jsir.any) -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %13 = "jsir.identifier_ref"() <{name = "is_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.variable_declarator"(%13, %14) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%15) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 153, 156, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "not_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.member_expression"(%4) <{literal_property = #jsir, , "log", 179, 182, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "is_a_const"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%5, %6) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[#jsir, , 0, 53, " TODO(b/217662731): `is_a_const` should be a const.">]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"not_a_const"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %9 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.variable_declarator (%8, %9) +// JSIR-NEXT: // %10 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%10) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier {"x"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%8) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %8 = jsir.identifier_ref {"not_a_const"} +// JSIR-NEXT: // %8 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %9 = jsir.identifier {"not_a_const"} +// JSIR-NEXT: // %9 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %10 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %10 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %11 = jsir.binary_expression (%9, %10) {"+"} +// JSIR-NEXT: // %11 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %12 = jsir.assignment_expression (%8, %11) {"="} +// JSIR-NEXT: // %12 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%12) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %13 = jsir.identifier_ref {"is_a_const"} +// JSIR-NEXT: // %13 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %14 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %14 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %15 = jsir.variable_declarator (%13, %14) +// JSIR-NEXT: // %15 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%15) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 153, 156, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"not_a_const"} +// JSIR-NEXT: // %2 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier {"console"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.member_expression (%4) {#jsir, , "log", 179, 182, 0, "log">} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.identifier {"is_a_const"} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %7 = jsir.call_expression (%5, %6) +// JSIR-NEXT: // %7 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%7) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/while/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/while/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/while/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/while/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/output.generated.txt b/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/output.generated.txt index 4fd78252..fc03c662 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/output.generated.txt +++ b/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/output.generated.txt @@ -1,113 +1,113 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 46, 49, 0, "log">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: jsir.file {[]} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.program {"script"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.variable_declaration {"var"} ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} -// JSHIR-NEXT: // %5 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.variable_declarator (%4, %5) -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.exprs_region_end (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.while_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.boolean_literal {false} -// JSHIR-NEXT: // %4 = false -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expr_region_end (%4) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jshir.block_statement ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %4 = jsir.identifier_ref {"x"} -// JSHIR-NEXT: // %4 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} -// JSHIR-NEXT: // %5 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} -// JSHIR-NEXT: // %6 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%6) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %0 = jsir.identifier {"console"} -// JSHIR-NEXT: // %0 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 46, 49, 0, "log">} -// JSHIR-NEXT: // %1 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %2 = jsir.identifier {"x"} -// JSHIR-NEXT: // %2 = 1.000000e+00 : f64 -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: %3 = jsir.call_expression (%1, %2) -// JSHIR-NEXT: // %3 = -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: jsir.expression_statement (%3) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: // -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } -// JSHIR-NEXT: }) -// JSHIR-NEXT: // State [default = ] { } +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.variable_declarator"(%4, %5) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %4 = "jsir.boolean_literal"() <{value = false}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.assignment_expression"(%4, %5) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "console"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "log", 46, 49, 0, "log">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.call_expression"(%1, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: jsir.file {[]} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.program {"script"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.variable_declaration {"var"} ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 1.000000e+00 : f64} +// JSIR-NEXT: // %5 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.variable_declarator (%4, %5) +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.exprs_region_end (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.while_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.boolean_literal {false} +// JSIR-NEXT: // %4 = false +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expr_region_end (%4) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jshir.block_statement ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %4 = jsir.identifier_ref {"x"} +// JSIR-NEXT: // %4 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %5 = jsir.numeric_literal {#jsir, 2.000000e+00 : f64} +// JSIR-NEXT: // %5 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %6 = jsir.assignment_expression (%4, %5) {"="} +// JSIR-NEXT: // %6 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%6) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %0 = jsir.identifier {"console"} +// JSIR-NEXT: // %0 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %1 = jsir.member_expression (%0) {#jsir, , "log", 46, 49, 0, "log">} +// JSIR-NEXT: // %1 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %2 = jsir.identifier {"x"} +// JSIR-NEXT: // %2 = 1.000000e+00 : f64 +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: %3 = jsir.call_expression (%1, %2) +// JSIR-NEXT: // %3 = +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: jsir.expression_statement (%3) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: // +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } +// JSIR-NEXT: }) +// JSIR-NEXT: // State [default = ] { } diff --git a/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/run.generated.lit b/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/run.generated.lit index f120aee7..312a0341 100644 --- a/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/run.generated.lit +++ b/maldoca/js/ir/analyses/constant_propagation/tests/while_dead/run.generated.lit @@ -2,4 +2,4 @@ // RUN: jsir_gen --input_file "$(dirname %s)"/input.js \ // RUN: --passes "source2ast,ast2hir" \ // RUN: --jsir_analysis constant_propagation \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname %s)"/output.generated.txt +// RUN: | FileCheck --check-prefix JSIR "$(dirname %s)"/output.generated.txt diff --git a/maldoca/js/ir/conversion/tests/array_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/array_expression/jshir.mlir index ba793456..b32bb24a 100644 --- a/maldoca/js/ir/conversion/tests/array_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/array_expression/jshir.mlir @@ -1,13 +1,13 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.none"() : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.spread_element"(%3) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.array_expression"(%0, %1, %2, %4) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.none"() : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.spread_element"(%3) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %5 = "jsir.array_expression"(%0, %1, %2, %4) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/array_expression/run.lit b/maldoca/js/ir/conversion/tests/array_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/array_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/array_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/array_pattern/jshir.mlir b/maldoca/js/ir/conversion/tests/array_pattern/jshir.mlir index 2b600e78..bee211e0 100644 --- a/maldoca/js/ir/conversion/tests/array_pattern/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/array_pattern/jshir.mlir @@ -1,15 +1,15 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.none"() : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.array_pattern_ref"(%0, %1, %2) : (!jsir.any, !jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.none"() : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.array_pattern_ref"(%0, %1, %2) : (!jsir.any, !jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/array_pattern/run.lit b/maldoca/js/ir/conversion/tests/array_pattern/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/array_pattern/run.lit +++ b/maldoca/js/ir/conversion/tests/array_pattern/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/arrow_function_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/arrow_function_expression/jshir.mlir index 4970597f..2516695e 100644 --- a/maldoca/js/ir/conversion/tests/arrow_function_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/arrow_function_expression/jshir.mlir @@ -1,22 +1,22 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.arrow_function_expression"(%0) <{async = false, generator = false, operandSegmentSizes = array}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.arrow_function_expression"(%2) <{async = false, generator = false, operandSegmentSizes = array}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.arrow_function_expression"(%0) <{async = false, generator = false, operandSegmentSizes = array}> ({ +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "x"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.arrow_function_expression"(%2) <{async = false, generator = false, operandSegmentSizes = array}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "y"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/arrow_function_expression/run.lit b/maldoca/js/ir/conversion/tests/arrow_function_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/arrow_function_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/arrow_function_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/binary_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/binary_expression/jshir.mlir index ca61bd1d..ac55f88f 100644 --- a/maldoca/js/ir/conversion/tests/binary_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/binary_expression/jshir.mlir @@ -1,12 +1,12 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.binary_expression"(%0, %1) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.binary_expression"(%2, %3) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/binary_expression/run.lit b/maldoca/js/ir/conversion/tests/binary_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/binary_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/binary_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/block_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/block_statement/jshir.mlir index bfb12580..0a83ca59 100644 --- a/maldoca/js/ir/conversion/tests/block_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/block_statement/jshir.mlir @@ -1,14 +1,14 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/block_statement/run.lit b/maldoca/js/ir/conversion/tests/block_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/block_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/block_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/break/jshir.mlir b/maldoca/js/ir/conversion/tests/break/jshir.mlir index 2d78e2de..7682ba24 100644 --- a/maldoca/js/ir/conversion/tests/break/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/break/jshir.mlir @@ -1,50 +1,50 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 80, " =============================================================================">, #jsir, , 81, 112, " Breaking out of a while loop">, #jsir, , 113, 193, " =============================================================================">, #jsir, , 235, 315, " =============================================================================">, #jsir, , 316, 352, " Breaking out of second while loop">, #jsir, , 353, 433, " =============================================================================">, #jsir, , 514, 594, " =============================================================================">, #jsir, , 595, 630, " Breaking immediately after label">, #jsir, , 631, 711, " =============================================================================">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%1) ({ -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label0", 435, 441, 0, "label0">}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label1", 462, 468, 4, "label1">}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%1) ({ -// JSHIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "label0", 503, 509, 5, "label0">}> : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label", 713, 718, 0, "label">}> ({ -// JSHIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "label", 726, 731, 0, "label">}> : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 80, " =============================================================================">, #jsir, , 81, 112, " Breaking out of a while loop">, #jsir, , 113, 193, " =============================================================================">, #jsir, , 235, 315, " =============================================================================">, #jsir, , 316, 352, " Breaking out of second while loop">, #jsir, , 353, 433, " =============================================================================">, #jsir, , 514, 594, " =============================================================================">, #jsir, , 595, 630, " Breaking immediately after label">, #jsir, , 631, 711, " =============================================================================">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%1) ({ +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label0", 435, 441, 0, "label0">}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label1", 462, 468, 4, "label1">}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%1) ({ +// JSIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "label0", 503, 509, 5, "label0">}> : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label", 713, 718, 0, "label">}> ({ +// JSIR-NEXT: "jshir.break_statement"() <{label = #jsir, , "label", 726, 731, 0, "label">}> : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/break/run.lit b/maldoca/js/ir/conversion/tests/break/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/break/run.lit +++ b/maldoca/js/ir/conversion/tests/break/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/call_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/call_expression/jshir.mlir index 4fc0b2ea..d63193ad 100644 --- a/maldoca/js/ir/conversion/tests/call_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/call_expression/jshir.mlir @@ -1,16 +1,16 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "foo"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.call_expression"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "bar"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.spread_element"(%5) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.call_expression"(%2, %3, %4, %6) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "foo"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.call_expression"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "bar"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.spread_element"(%5) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %7 = "jsir.call_expression"(%2, %3, %4, %6) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/call_expression/run.lit b/maldoca/js/ir/conversion/tests/call_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/call_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/call_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/class_declaration/jshir.mlir b/maldoca/js/ir/conversion/tests/class_declaration/jshir.mlir index cfb81091..1df7c601 100644 --- a/maldoca/js/ir/conversion/tests/class_declaration/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/class_declaration/jshir.mlir @@ -1,67 +1,67 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.class_declaration"() <{id = #jsir, , "Foo", 6, 9, 1, "Foo">}> ({ -// JSHIR-NEXT: "jsir.class_body"() ({ -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , "property_identifier", 14, 33, 1, "property_identifier">, static_ = false}> ({ -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_private_property"() <{key = #jsir, , 41, 63, 1, , , "property_private_name", 42, 63, 1, "property_private_name">, static_ = false}> ({ -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 71, 96, 1, "property_literal_string", "\22property_literal_string\22", "property_literal_string">, static_ = false}> ({ -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 104, 107, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, static_ = false}> ({ -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %0 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.class_property"(%0) <{static_ = false}> ({ -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 144, 161, 1, "method_identifier">, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_private_method"() <{async = false, generator = false, key = #jsir, , 169, 189, 1, , , "method_private_name", 170, 189, 1, "method_private_name">, kind = "method", static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 197, 220, 1, "method_literal_string", "\22method_literal_string\22", "method_literal_string">, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 228, 231, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %1 = "jsir.string_literal"() <{extra = #jsir, value = "method_computed"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.class_method"(%1) <{async = false, generator = false, kind = "method", operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.class_declaration"() <{id = #jsir, , "Foo", 6, 9, 1, "Foo">}> ({ +// JSIR-NEXT: "jsir.class_body"() ({ +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , "property_identifier", 14, 33, 1, "property_identifier">, static_ = false}> ({ +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_private_property"() <{key = #jsir, , 41, 63, 1, , , "property_private_name", 42, 63, 1, "property_private_name">, static_ = false}> ({ +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 71, 96, 1, "property_literal_string", "\22property_literal_string\22", "property_literal_string">, static_ = false}> ({ +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 104, 107, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, static_ = false}> ({ +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %0 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.class_property"(%0) <{static_ = false}> ({ +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 144, 161, 1, "method_identifier">, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_private_method"() <{async = false, generator = false, key = #jsir, , 169, 189, 1, , , "method_private_name", 170, 189, 1, "method_private_name">, kind = "method", static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 197, 220, 1, "method_literal_string", "\22method_literal_string\22", "method_literal_string">, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 228, 231, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %1 = "jsir.string_literal"() <{extra = #jsir, value = "method_computed"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.class_method"(%1) <{async = false, generator = false, kind = "method", operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/class_declaration/run.lit b/maldoca/js/ir/conversion/tests/class_declaration/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/class_declaration/run.lit +++ b/maldoca/js/ir/conversion/tests/class_declaration/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/class_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/class_expression/jshir.mlir index 0d7f7b24..f6969eaf 100644 --- a/maldoca/js/ir/conversion/tests/class_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/class_expression/jshir.mlir @@ -1,69 +1,69 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.class_expression"() ({ -// JSHIR-NEXT: "jsir.class_body"() ({ -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , "property_identifier", 11, 30, 1, "property_identifier">, static_ = false}> ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_private_property"() <{key = #jsir, , 38, 60, 1, , , "property_private_name", 39, 60, 1, "property_private_name">, static_ = false}> ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 68, 93, 1, "property_literal_string", "\22property_literal_string\22", "property_literal_string">, static_ = false}> ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 101, 104, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, static_ = false}> ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.class_property"(%2) <{static_ = false}> ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 141, 158, 1, "method_identifier">, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_private_method"() <{async = false, generator = false, key = #jsir, , 166, 186, 1, , , "method_private_name", 167, 186, 1, "method_private_name">, kind = "method", static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 194, 217, 1, "method_literal_string", "\22method_literal_string\22", "method_literal_string">, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 225, 228, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: %3 = "jsir.string_literal"() <{extra = #jsir, value = "method_computed"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.class_method"(%3) <{async = false, generator = false, kind = "method", operandSegmentSizes = array, static_ = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.parenthesized_expression"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.class_expression"() ({ +// JSIR-NEXT: "jsir.class_body"() ({ +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , "property_identifier", 11, 30, 1, "property_identifier">, static_ = false}> ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_private_property"() <{key = #jsir, , 38, 60, 1, , , "property_private_name", 39, 60, 1, "property_private_name">, static_ = false}> ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 68, 93, 1, "property_literal_string", "\22property_literal_string\22", "property_literal_string">, static_ = false}> ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_property"() <{literal_key = #jsir, , 101, 104, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, static_ = false}> ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.class_property"(%2) <{static_ = false}> ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 5.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 141, 158, 1, "method_identifier">, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_private_method"() <{async = false, generator = false, key = #jsir, , 166, 186, 1, , , "method_private_name", 167, 186, 1, "method_private_name">, kind = "method", static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 194, 217, 1, "method_literal_string", "\22method_literal_string\22", "method_literal_string">, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.class_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 225, 228, 1, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: %3 = "jsir.string_literal"() <{extra = #jsir, value = "method_computed"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.class_method"(%3) <{async = false, generator = false, kind = "method", operandSegmentSizes = array, static_ = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.parenthesized_expression"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/class_expression/run.lit b/maldoca/js/ir/conversion/tests/class_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/class_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/class_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/comment/jshir.mlir b/maldoca/js/ir/conversion/tests/comment/jshir.mlir index fc951394..0df66e38 100644 --- a/maldoca/js/ir/conversion/tests/comment/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/comment/jshir.mlir @@ -1,10 +1,10 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 4, " 1">, #jsir, , 8, 12, " 2">, #jsir, , 15, 22, " 3 ">, #jsir, , 24, 28, " 4">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 4, " 1">, #jsir, , 8, 12, " 2">, #jsir, , 15, 22, " 3 ">, #jsir, , 24, 28, " 4">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/comment/run.lit b/maldoca/js/ir/conversion/tests/comment/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/comment/run.lit +++ b/maldoca/js/ir/conversion/tests/comment/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/conditional_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/conditional_expression/jshir.mlir index 25572e41..01009c64 100644 --- a/maldoca/js/ir/conversion/tests/conditional_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/conditional_expression/jshir.mlir @@ -1,15 +1,15 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jshir.conditional_expression"(%0) ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jshir.conditional_expression"(%0) ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/conditional_expression/run.lit b/maldoca/js/ir/conversion/tests/conditional_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/conditional_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/conditional_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/continue_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/continue_statement/jshir.mlir index 6087e785..bbaac4e4 100644 --- a/maldoca/js/ir/conversion/tests/continue_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/continue_statement/jshir.mlir @@ -1,47 +1,47 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%0) ({ -// JSHIR-NEXT: "jshir.continue_statement"() : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label0", 43, 49, 0, "label0">}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label1", 70, 76, 4, "label1">}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%1) ({ -// JSHIR-NEXT: "jshir.continue_statement"() <{label = #jsir, , "label0", 114, 120, 5, "label0">}> : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%0) ({ +// JSIR-NEXT: "jshir.continue_statement"() : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label0", 43, 49, 0, "label0">}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label1", 70, 76, 4, "label1">}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%1) ({ +// JSIR-NEXT: "jshir.continue_statement"() <{label = #jsir, , "label0", 114, 120, 5, "label0">}> : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/continue_statement/run.lit b/maldoca/js/ir/conversion/tests/continue_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/continue_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/continue_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/debugger_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/debugger_statement/jshir.mlir index 38150377..8920c40a 100644 --- a/maldoca/js/ir/conversion/tests/debugger_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/debugger_statement/jshir.mlir @@ -1,7 +1,7 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.debugger_statement"() : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.debugger_statement"() : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/debugger_statement/run.lit b/maldoca/js/ir/conversion/tests/debugger_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/debugger_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/debugger_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/directive_literal/jshir.mlir b/maldoca/js/ir/conversion/tests/directive_literal/jshir.mlir index 5fc99488..8ef1849f 100644 --- a/maldoca/js/ir/conversion/tests/directive_literal/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/directive_literal/jshir.mlir @@ -1,8 +1,8 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.directive_literal"() <{extra = #jsir, value = "use strict"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.directive"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.directive_literal"() <{extra = #jsir, value = "use strict"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.directive"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/directive_literal/run.lit b/maldoca/js/ir/conversion/tests/directive_literal/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/directive_literal/run.lit +++ b/maldoca/js/ir/conversion/tests/directive_literal/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/do_while_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/do_while_statement/jshir.mlir index d879b297..67b602ec 100644 --- a/maldoca/js/ir/conversion/tests/do_while_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/do_while_statement/jshir.mlir @@ -1,24 +1,24 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.do_while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.do_while_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.do_while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.do_while_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/do_while_statement/run.lit b/maldoca/js/ir/conversion/tests/do_while_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/do_while_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/do_while_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/empty_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/empty_statement/jshir.mlir index 3c13eb44..8d814227 100644 --- a/maldoca/js/ir/conversion/tests/empty_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/empty_statement/jshir.mlir @@ -1,7 +1,7 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.empty_statement"() : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.empty_statement"() : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/empty_statement/run.lit b/maldoca/js/ir/conversion/tests/empty_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/empty_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/empty_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/export_declaration/jshir.mlir b/maldoca/js/ir/conversion/tests/export_declaration/jshir.mlir index 2e29017e..960a91d2 100644 --- a/maldoca/js/ir/conversion/tests/export_declaration/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/export_declaration/jshir.mlir @@ -1,20 +1,20 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 139, 175, " TODO(b/182441574): Fix AST error.">, #jsir, , 176, 215, " export * as identifier_3 from \22foo\22;">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ -// JSHIR-NEXT: "jsir.export_default_declaration"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "arbitrary_expression"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.export_named_declaration"() <{source = #jsir, , 83, 88, 0, "foo", "\22foo\22", "foo">, specifiers = [#jsir, , 46, 58, 0, #jsir, , "identifier_1", 46, 58, 0, "identifier_1">, #jsir, , "identifier_1", 46, 58, 0, "identifier_1">>, #jsir, , 60, 76, 0, #jsir, , 60, 76, 0, "string_literal", "\22string_literal\22", "string_literal">, #jsir, , 60, 76, 0, "string_literal", "\22string_literal\22", "string_literal">>]}> ({ -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.export_named_declaration"() <{specifiers = []}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "identifier_2"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.variable_declarator"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.export_all_declaration"() <{source = #jsir, , 131, 136, 0, "foo", "\22foo\22", "foo">}> : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = [#jsir, , 139, 175, " TODO(b/182441574): Fix AST error.">, #jsir, , 176, 215, " export * as identifier_3 from \22foo\22;">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ +// JSIR-NEXT: "jsir.export_default_declaration"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "arbitrary_expression"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.export_named_declaration"() <{source = #jsir, , 83, 88, 0, "foo", "\22foo\22", "foo">, specifiers = [#jsir, , 46, 58, 0, #jsir, , "identifier_1", 46, 58, 0, "identifier_1">, #jsir, , "identifier_1", 46, 58, 0, "identifier_1">>, #jsir, , 60, 76, 0, #jsir, , 60, 76, 0, "string_literal", "\22string_literal\22", "string_literal">, #jsir, , 60, 76, 0, "string_literal", "\22string_literal\22", "string_literal">>]}> ({ +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.export_named_declaration"() <{specifiers = []}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "identifier_2"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.variable_declarator"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.export_all_declaration"() <{source = #jsir, , 131, 136, 0, "foo", "\22foo\22", "foo">}> : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/export_declaration/run.lit b/maldoca/js/ir/conversion/tests/export_declaration/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/export_declaration/run.lit +++ b/maldoca/js/ir/conversion/tests/export_declaration/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/for_in_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/for_in_statement/jshir.mlir index b130e8ca..b413cdf0 100644 --- a/maldoca/js/ir/conversion/tests/for_in_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/for_in_statement/jshir.mlir @@ -1,18 +1,18 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_in_statement"(%0, %1) ({ -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_in_statement"(%2, %3) <{left_declaration = #jsir, , 24, 29, 2, , , 28, 29, 2, "a", 2, "let">}> ({ -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_in_statement"(%0, %1) ({ +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_in_statement"(%2, %3) <{left_declaration = #jsir, , 24, 29, 2, , , 28, 29, 2, "a", 2, "let">}> ({ +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/for_in_statement/run.lit b/maldoca/js/ir/conversion/tests/for_in_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/for_in_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/for_in_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/for_of_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/for_of_statement/jshir.mlir index 0ceb0480..be51861d 100644 --- a/maldoca/js/ir/conversion/tests/for_of_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/for_of_statement/jshir.mlir @@ -1,28 +1,28 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_of_statement"(%0, %1) <{await = false}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_of_statement"(%2, %3) <{await = false, left_declaration = #jsir, , 24, 29, 2, , , 28, 29, 2, "a", 2, "let">}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.for_of_statement"(%4, %5) <{await = false}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_of_statement"(%0, %1) <{await = false}> ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_of_statement"(%2, %3) <{await = false, left_declaration = #jsir, , 24, 29, 2, , , 28, 29, 2, "a", 2, "let">}> ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.for_of_statement"(%4, %5) <{await = false}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/for_of_statement/run.lit b/maldoca/js/ir/conversion/tests/for_of_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/for_of_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/for_of_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/for_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/for_statement/jshir.mlir index cd8d399b..da168a18 100644 --- a/maldoca/js/ir/conversion/tests/for_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/for_statement/jshir.mlir @@ -1,47 +1,47 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.variable_declarator"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.for_statement"() ({ -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.variable_declarator"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.for_statement"() ({ +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/for_statement/run.lit b/maldoca/js/ir/conversion/tests/for_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/for_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/for_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/function_declaration/jshir.mlir b/maldoca/js/ir/conversion/tests/function_declaration/jshir.mlir index 0cdc2885..81d4dc4a 100644 --- a/maldoca/js/ir/conversion/tests/function_declaration/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/function_declaration/jshir.mlir @@ -1,31 +1,31 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "foo", 9, 12, 1, "foo">}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "bar", 42, 45, 2, "bar">}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "some_computation"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.call_expression"(%1) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.assignment_pattern_ref"(%0, %2) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "foo", 9, 12, 1, "foo">}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.function_declaration"() <{async = false, generator = false, id = #jsir, , "bar", 42, 45, 2, "bar">}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "some_computation"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.call_expression"(%1) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.assignment_pattern_ref"(%0, %2) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.return_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/function_declaration/run.lit b/maldoca/js/ir/conversion/tests/function_declaration/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/function_declaration/run.lit +++ b/maldoca/js/ir/conversion/tests/function_declaration/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/if_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/if_statement/jshir.mlir index 3a07c790..d91b1021 100644 --- a/maldoca/js/ir/conversion/tests/if_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/if_statement/jshir.mlir @@ -1,24 +1,24 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%0) ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%1) ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%0) ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%1) ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/if_statement/run.lit b/maldoca/js/ir/conversion/tests/if_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/if_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/if_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/import_declaration/jshir.mlir b/maldoca/js/ir/conversion/tests/import_declaration/jshir.mlir index 51a88669..65657c8f 100644 --- a/maldoca/js/ir/conversion/tests/import_declaration/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/import_declaration/jshir.mlir @@ -1,10 +1,10 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ -// JSHIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 30, 35, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 7, 24, 0, "default_specifier", 0, , , "default_specifier", 7, 24, 0, "default_specifier">]}> : () -> () -// JSHIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 62, 67, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 46, 55, 0, "specifier", 0, #jsir, , "specifier", 46, 55, 0, "specifier">, , , "specifier", 46, 55, 0, "specifier">]}> : () -> () -// JSHIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 107, 112, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 78, 88, 0, "specifier1", 0, #jsir, , "specifier1", 78, 88, 0, "specifier1">, , , "specifier1", 78, 88, 0, "specifier1">, #jsir, , 90, 100, 0, "specifier2", 0, #jsir, , "specifier2", 90, 100, 0, "specifier2">, , , "specifier2", 90, 100, 0, "specifier2">]}> : () -> () -// JSHIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 152, 157, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 122, 146, 0, "namespace_specifier", 0, , , "namespace_specifier", 127, 146, 0, "namespace_specifier">]}> : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ +// JSIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 30, 35, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 7, 24, 0, "default_specifier", 0, , , "default_specifier", 7, 24, 0, "default_specifier">]}> : () -> () +// JSIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 62, 67, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 46, 55, 0, "specifier", 0, #jsir, , "specifier", 46, 55, 0, "specifier">, , , "specifier", 46, 55, 0, "specifier">]}> : () -> () +// JSIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 107, 112, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 78, 88, 0, "specifier1", 0, #jsir, , "specifier1", 78, 88, 0, "specifier1">, , , "specifier1", 78, 88, 0, "specifier1">, #jsir, , 90, 100, 0, "specifier2", 0, #jsir, , "specifier2", 90, 100, 0, "specifier2">, , , "specifier2", 90, 100, 0, "specifier2">]}> : () -> () +// JSIR-NEXT: "jsir.import_declaration"() <{source = #jsir, , 152, 157, 0, "src", "\22src\22", "src">, specifiers = [#jsir, , 122, 146, 0, "namespace_specifier", 0, , , "namespace_specifier", 127, 146, 0, "namespace_specifier">]}> : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/import_declaration/run.lit b/maldoca/js/ir/conversion/tests/import_declaration/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/import_declaration/run.lit +++ b/maldoca/js/ir/conversion/tests/import_declaration/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/interpreter_directive/jshir.mlir b/maldoca/js/ir/conversion/tests/interpreter_directive/jshir.mlir index b573c597..e472b2dc 100644 --- a/maldoca/js/ir/conversion/tests/interpreter_directive/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/interpreter_directive/jshir.mlir @@ -1,7 +1,7 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{interpreter = #jsir, , 0, 25, "/usr/bin/env babel-node">, source_type = "script"}> ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{interpreter = #jsir, , 0, 25, "/usr/bin/env babel-node">, source_type = "script"}> ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/interpreter_directive/run.lit b/maldoca/js/ir/conversion/tests/interpreter_directive/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/interpreter_directive/run.lit +++ b/maldoca/js/ir/conversion/tests/interpreter_directive/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/labeled_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/labeled_statement/jshir.mlir index 994179e9..298192de 100644 --- a/maldoca/js/ir/conversion/tests/labeled_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/labeled_statement/jshir.mlir @@ -1,14 +1,14 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label", 0, 5, 0, "label">}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.if_statement"(%0) ({ -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.labeled_statement"() <{label = #jsir, , "label", 0, 5, 0, "label">}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.if_statement"(%0) ({ +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/labeled_statement/run.lit b/maldoca/js/ir/conversion/tests/labeled_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/labeled_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/labeled_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/literal/jshir.mlir b/maldoca/js/ir/conversion/tests/literal/jshir.mlir index d19fcc25..06933100 100644 --- a/maldoca/js/ir/conversion/tests/literal/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/literal/jshir.mlir @@ -1,18 +1,18 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.reg_exp_literal"() <{extra = #jsir, flags = "", pattern = "1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.null_literal"() : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: %5 = "jsir.big_int_literal"() <{extra = #jsir, value = "1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 21, " regular expression">, #jsir, , 28, 35, " null">, #jsir, , 42, 51, " string">, #jsir, , 58, 68, " boolean">, #jsir, , 76, 85, " number">, #jsir, , 90, 100, " big int">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.reg_exp_literal"() <{extra = #jsir, flags = "", pattern = "1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.null_literal"() : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.string_literal"() <{extra = #jsir, value = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.boolean_literal"() <{value = true}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: %5 = "jsir.big_int_literal"() <{extra = #jsir, value = "1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/literal/run.lit b/maldoca/js/ir/conversion/tests/literal/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/literal/run.lit +++ b/maldoca/js/ir/conversion/tests/literal/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/load_store_identifier/jshir.mlir b/maldoca/js/ir/conversion/tests/load_store_identifier/jshir.mlir index 0213c324..7173af23 100644 --- a/maldoca/js/ir/conversion/tests/load_store_identifier/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/load_store_identifier/jshir.mlir @@ -1,12 +1,12 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/load_store_identifier/run.lit b/maldoca/js/ir/conversion/tests/load_store_identifier/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/load_store_identifier/run.lit +++ b/maldoca/js/ir/conversion/tests/load_store_identifier/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/logical_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/logical_expression/jshir.mlir index d4a10880..aaa26f68 100644 --- a/maldoca/js/ir/conversion/tests/logical_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/logical_expression/jshir.mlir @@ -1,24 +1,24 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jshir.logical_expression"(%0) <{operator_ = "&&"}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jshir.logical_expression"(%2) <{operator_ = "||"}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jshir.logical_expression"(%4) <{operator_ = "??"}> ({ -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jshir.logical_expression"(%0) <{operator_ = "&&"}> ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jshir.logical_expression"(%2) <{operator_ = "||"}> ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jshir.logical_expression"(%4) <{operator_ = "??"}> ({ +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/logical_expression/run.lit b/maldoca/js/ir/conversion/tests/logical_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/logical_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/logical_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/member_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/member_expression/jshir.mlir index db0f489c..ba0ace0a 100644 --- a/maldoca/js/ir/conversion/tests/member_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/member_expression/jshir.mlir @@ -1,24 +1,24 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "b", 2, 3, 0, "b">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.member_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.member_expression_ref"(%5) <{literal_property = #jsir, , "b", 15, 16, 0, "b">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.assignment_expression"(%6, %7) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: %9 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.member_expression_ref"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.assignment_expression"(%11, %12) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%13) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.member_expression"(%0) <{literal_property = #jsir, , "b", 2, 3, 0, "b">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.member_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.member_expression_ref"(%5) <{literal_property = #jsir, , "b", 15, 16, 0, "b">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %7 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.assignment_expression"(%6, %7) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%8) : (!jsir.any) -> () +// JSIR-NEXT: %9 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.member_expression_ref"(%9, %10) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.assignment_expression"(%11, %12) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%13) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/member_expression/run.lit b/maldoca/js/ir/conversion/tests/member_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/member_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/member_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/meta_property/jshir.mlir b/maldoca/js/ir/conversion/tests/meta_property/jshir.mlir index 85294771..8959e935 100644 --- a/maldoca/js/ir/conversion/tests/meta_property/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/meta_property/jshir.mlir @@ -1,8 +1,8 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ -// JSHIR-NEXT: %0 = "jsir.meta_property"() <{meta = #jsir, , "import", 0, 6, 0, "import">, property = #jsir, , "meta", 7, 11, 0, "meta">}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "module"}> ({ +// JSIR-NEXT: %0 = "jsir.meta_property"() <{meta = #jsir, , "import", 0, 6, 0, "import">, property = #jsir, , "meta", 7, 11, 0, "meta">}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/meta_property/run.lit b/maldoca/js/ir/conversion/tests/meta_property/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/meta_property/run.lit +++ b/maldoca/js/ir/conversion/tests/meta_property/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/new_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/new_expression/jshir.mlir index 46367465..f42f7af2 100644 --- a/maldoca/js/ir/conversion/tests/new_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/new_expression/jshir.mlir @@ -1,13 +1,13 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "foo"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.spread_element"(%3) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.new_expression"(%0, %1, %2, %4) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "foo"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.spread_element"(%3) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %5 = "jsir.new_expression"(%0, %1, %2, %4) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/new_expression/run.lit b/maldoca/js/ir/conversion/tests/new_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/new_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/new_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/object_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/object_expression/jshir.mlir index 6a924645..ff7bd2e6 100644 --- a/maldoca/js/ir/conversion/tests/object_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/object_expression/jshir.mlir @@ -1,53 +1,53 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.object_expression"() ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "short_hand"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.object_property"(%2) <{literal_key = #jsir, , "short_hand", 5, 15, 0, "short_hand">, shorthand = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.object_property"(%4) <{literal_key = #jsir, , "property_identifier", 19, 38, 0, "property_identifier">, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.object_property"(%6) <{literal_key = #jsir, , 45, 70, 0, "property_string_literal", "\22property_string_literal\22", "property_string_literal">, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.object_property"(%8) <{literal_key = #jsir, , 77, 80, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.object_property"(%10, %11) <{shorthand = false}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 115, 132, 0, "method_identifier">, operandSegmentSizes = array}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 141, 166, 0, "property_string_literal", "\22property_string_literal\22", "property_string_literal">, operandSegmentSizes = array}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 175, 178, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %16 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any -// JSHIR-NEXT: %17 = "jsir.object_method"(%16) <{async = false, generator = false, kind = "method", operandSegmentSizes = array}> ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %18 = "jsir.identifier"() <{name = "spread_element"}> : () -> !jsir.any -// JSHIR-NEXT: %19 = "jsir.spread_element"(%18) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%3, %5, %7, %9, %12, %13, %14, %15, %17, %19) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.parenthesized_expression"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.object_expression"() ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "short_hand"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.object_property"(%2) <{literal_key = #jsir, , "short_hand", 5, 15, 0, "short_hand">, shorthand = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.object_property"(%4) <{literal_key = #jsir, , "property_identifier", 19, 38, 0, "property_identifier">, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.object_property"(%6) <{literal_key = #jsir, , 45, 70, 0, "property_string_literal", "\22property_string_literal\22", "property_string_literal">, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %8 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.object_property"(%8) <{literal_key = #jsir, , 77, 80, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.numeric_literal"() <{extra = #jsir, value = 4.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %12 = "jsir.object_property"(%10, %11) <{shorthand = false}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %13 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , "method_identifier", 115, 132, 0, "method_identifier">, operandSegmentSizes = array}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %14 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 141, 166, 0, "property_string_literal", "\22property_string_literal\22", "property_string_literal">, operandSegmentSizes = array}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %15 = "jsir.object_method"() <{async = false, generator = false, kind = "method", literal_key = #jsir, , 175, 178, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, operandSegmentSizes = array}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %16 = "jsir.string_literal"() <{extra = #jsir, value = "property_computed"}> : () -> !jsir.any +// JSIR-NEXT: %17 = "jsir.object_method"(%16) <{async = false, generator = false, kind = "method", operandSegmentSizes = array}> ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %18 = "jsir.identifier"() <{name = "spread_element"}> : () -> !jsir.any +// JSIR-NEXT: %19 = "jsir.spread_element"(%18) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%3, %5, %7, %9, %12, %13, %14, %15, %17, %19) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.parenthesized_expression"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/object_expression/run.lit b/maldoca/js/ir/conversion/tests/object_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/object_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/object_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/object_pattern/jshir.mlir b/maldoca/js/ir/conversion/tests/object_pattern/jshir.mlir index 4b7448a2..8c5d26c0 100644 --- a/maldoca/js/ir/conversion/tests/object_pattern/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/object_pattern/jshir.mlir @@ -1,26 +1,26 @@ -// JSHIR: "jsir.file"() <{comments = [#jsir, , 0, 48, " Must wrap with \22()\22, otherwise doesn't parse.">]}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.object_pattern_ref"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "lvalue_shorthand"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.object_property_ref"(%4) <{literal_key = #jsir, , "lvalue_shorthand", 59, 75, 0, "lvalue_shorthand">, shorthand = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "lvalue_1"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.object_property_ref"(%6) <{literal_key = #jsir, , "identifier", 81, 91, 0, "identifier">, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "lvalue_2"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.object_property_ref"(%8) <{literal_key = #jsir, , 107, 123, 0, "string_literal", "'string_literal'", "string_literal">, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "lvalue_3"}> : () -> !jsir.any -// JSHIR-NEXT: %11 = "jsir.object_property_ref"(%10) <{literal_key = #jsir, , 139, 142, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, shorthand = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %12 = "jsir.string_literal"() <{extra = #jsir, value = "computed"}> : () -> !jsir.any -// JSHIR-NEXT: %13 = "jsir.identifier_ref"() <{name = "lvalue_4"}> : () -> !jsir.any -// JSHIR-NEXT: %14 = "jsir.object_property_ref"(%12, %13) <{shorthand = false}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %15 = "jsir.identifier_ref"() <{name = "lvalue_rest"}> : () -> !jsir.any -// JSHIR-NEXT: %16 = "jsir.rest_element_ref"(%15) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%5, %7, %9, %11, %14, %16) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> () -// JSHIR-NEXT: }) : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "obj"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.parenthesized_expression"(%2) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = [#jsir, , 0, 48, " Must wrap with \22()\22, otherwise doesn't parse.">]}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.object_pattern_ref"() ({ +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "lvalue_shorthand"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.object_property_ref"(%4) <{literal_key = #jsir, , "lvalue_shorthand", 59, 75, 0, "lvalue_shorthand">, shorthand = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier_ref"() <{name = "lvalue_1"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.object_property_ref"(%6) <{literal_key = #jsir, , "identifier", 81, 91, 0, "identifier">, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %8 = "jsir.identifier_ref"() <{name = "lvalue_2"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.object_property_ref"(%8) <{literal_key = #jsir, , 107, 123, 0, "string_literal", "'string_literal'", "string_literal">, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.identifier_ref"() <{name = "lvalue_3"}> : () -> !jsir.any +// JSIR-NEXT: %11 = "jsir.object_property_ref"(%10) <{literal_key = #jsir, , 139, 142, 0, 1.000000e+00 : f64, "1.0", 1.000000e+00 : f64>, shorthand = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %12 = "jsir.string_literal"() <{extra = #jsir, value = "computed"}> : () -> !jsir.any +// JSIR-NEXT: %13 = "jsir.identifier_ref"() <{name = "lvalue_4"}> : () -> !jsir.any +// JSIR-NEXT: %14 = "jsir.object_property_ref"(%12, %13) <{shorthand = false}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %15 = "jsir.identifier_ref"() <{name = "lvalue_rest"}> : () -> !jsir.any +// JSIR-NEXT: %16 = "jsir.rest_element_ref"(%15) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%5, %7, %9, %11, %14, %16) : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> () +// JSIR-NEXT: }) : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "obj"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.assignment_expression"(%0, %1) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.parenthesized_expression"(%2) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/object_pattern/run.lit b/maldoca/js/ir/conversion/tests/object_pattern/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/object_pattern/run.lit +++ b/maldoca/js/ir/conversion/tests/object_pattern/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/optional_member_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/optional_member_expression/jshir.mlir index 46758175..b69a1a7b 100644 --- a/maldoca/js/ir/conversion/tests/optional_member_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/optional_member_expression/jshir.mlir @@ -1,21 +1,21 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.optional_member_expression"(%0) <{literal_property = #jsir, , "b", 3, 4, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "b", 9, 10, 0, "b">}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.optional_member_expression"(%3) <{literal_property = #jsir, , "c", 12, 13, 0, "c">, optional = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.optional_member_expression"(%5) <{literal_property = #jsir, , "b", 19, 20, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.optional_member_expression"(%6) <{literal_property = #jsir, , "c", 21, 22, 0, "c">, optional = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: %8 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %9 = "jsir.optional_member_expression"(%8) <{literal_property = #jsir, , "b", 28, 29, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %10 = "jsir.optional_member_expression"(%9) <{literal_property = #jsir, , "c", 31, 32, 0, "c">, optional = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%10) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.optional_member_expression"(%0) <{literal_property = #jsir, , "b", 3, 4, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.member_expression"(%2) <{literal_property = #jsir, , "b", 9, 10, 0, "b">}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.optional_member_expression"(%3) <{literal_property = #jsir, , "c", 12, 13, 0, "c">, optional = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: %5 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.optional_member_expression"(%5) <{literal_property = #jsir, , "b", 19, 20, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %7 = "jsir.optional_member_expression"(%6) <{literal_property = #jsir, , "c", 21, 22, 0, "c">, optional = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: %8 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %9 = "jsir.optional_member_expression"(%8) <{literal_property = #jsir, , "b", 28, 29, 0, "b">, optional = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %10 = "jsir.optional_member_expression"(%9) <{literal_property = #jsir, , "c", 31, 32, 0, "c">, optional = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%10) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/optional_member_expression/run.lit b/maldoca/js/ir/conversion/tests/optional_member_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/optional_member_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/optional_member_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/parenthesized_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/parenthesized_expression/jshir.mlir index 9f279bcc..16cea57c 100644 --- a/maldoca/js/ir/conversion/tests/parenthesized_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/parenthesized_expression/jshir.mlir @@ -1,16 +1,16 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.parenthesized_expression_ref"(%0) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.assignment_expression"(%1, %2) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.parenthesized_expression"(%5) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.assignment_expression"(%4, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.parenthesized_expression_ref"(%0) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.assignment_expression"(%1, %2) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: %4 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.parenthesized_expression"(%5) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %7 = "jsir.assignment_expression"(%4, %6) <{operator_ = "="}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%7) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/parenthesized_expression/run.lit b/maldoca/js/ir/conversion/tests/parenthesized_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/parenthesized_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/parenthesized_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/run.lit.template b/maldoca/js/ir/conversion/tests/run.lit.template index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/run.lit.template +++ b/maldoca/js/ir/conversion/tests/run.lit.template @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/switch_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/switch_statement/jshir.mlir index 0371ccba..c634f74b 100644 --- a/maldoca/js/ir/conversion/tests/switch_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/switch_statement/jshir.mlir @@ -1,66 +1,66 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.switch_statement"(%0) ({ -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "body0"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "body1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.switch_statement"(%1) ({ -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "f"}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.call_expression"(%4) : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "body0"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %4 = "jsir.identifier"() <{name = "body1"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: "jshir.break_statement"() : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.switch_statement"(%2) ({ -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.switch_statement"(%3) ({ -// JSHIR-NEXT: "jshir.switch_case"() ({ -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.switch_statement"(%0) ({ +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "body0"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "body1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.switch_statement"(%1) ({ +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "f"}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.call_expression"(%4) : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "body0"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %6 = "jsir.binary_expression"(%4, %5) <{operator_ = "+"}> : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%6) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %4 = "jsir.identifier"() <{name = "body1"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: "jshir.break_statement"() : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.switch_statement"(%2) ({ +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.switch_statement"(%3) ({ +// JSIR-NEXT: "jshir.switch_case"() ({ +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/switch_statement/run.lit b/maldoca/js/ir/conversion/tests/switch_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/switch_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/switch_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/tagged_template/jshir.mlir b/maldoca/js/ir/conversion/tests/tagged_template/jshir.mlir index 8424e47f..aff44a24 100644 --- a/maldoca/js/ir/conversion/tests/tagged_template/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/tagged_template/jshir.mlir @@ -1,12 +1,12 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "raw"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.template_element_value"() <{cooked = "42", raw = "42"}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.template_element"(%1) <{tail = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.template_literal"(%2) <{operandSegmentSizes = array}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.tagged_template_expression"(%0, %3) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "raw"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.template_element_value"() <{cooked = "42", raw = "42"}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.template_element"(%1) <{tail = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.template_literal"(%2) <{operandSegmentSizes = array}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.tagged_template_expression"(%0, %3) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%4) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/tagged_template/run.lit b/maldoca/js/ir/conversion/tests/tagged_template/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/tagged_template/run.lit +++ b/maldoca/js/ir/conversion/tests/tagged_template/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/template/jshir.mlir b/maldoca/js/ir/conversion/tests/template/jshir.mlir index 06d5199f..04287625 100644 --- a/maldoca/js/ir/conversion/tests/template/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/template/jshir.mlir @@ -1,16 +1,16 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.template_element_value"() <{cooked = "a", raw = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.template_element"(%0) <{tail = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.template_element_value"() <{cooked = "c", raw = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.template_element"(%2) <{tail = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.template_element_value"() <{cooked = "", raw = ""}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.template_element"(%4) <{tail = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %7 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %8 = "jsir.template_literal"(%1, %3, %5, %6, %7) <{operandSegmentSizes = array}> : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%8) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.template_element_value"() <{cooked = "a", raw = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.template_element"(%0) <{tail = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %2 = "jsir.template_element_value"() <{cooked = "c", raw = "c"}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.template_element"(%2) <{tail = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %4 = "jsir.template_element_value"() <{cooked = "", raw = ""}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.template_element"(%4) <{tail = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: %6 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %7 = "jsir.identifier"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %8 = "jsir.template_literal"(%1, %3, %5, %6, %7) <{operandSegmentSizes = array}> : (!jsir.any, !jsir.any, !jsir.any, !jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%8) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/template/run.lit b/maldoca/js/ir/conversion/tests/template/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/template/run.lit +++ b/maldoca/js/ir/conversion/tests/template/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/test_config.json b/maldoca/js/ir/conversion/tests/test_config.json index 19aa3dac..df02762d 100644 --- a/maldoca/js/ir/conversion/tests/test_config.json +++ b/maldoca/js/ir/conversion/tests/test_config.json @@ -8,7 +8,7 @@ { "output_file": "jshir.mlir", "passes": "source2ast,ast2hir", - "prefix": "JSHIR" + "prefix": "JSIR" }, { "output_file": "output.js", diff --git a/maldoca/js/ir/conversion/tests/throw_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/throw_statement/jshir.mlir index f58cbc24..f4aa1c10 100644 --- a/maldoca/js/ir/conversion/tests/throw_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/throw_statement/jshir.mlir @@ -1,8 +1,8 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.throw_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: "jsir.throw_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/throw_statement/run.lit b/maldoca/js/ir/conversion/tests/throw_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/throw_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/throw_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/try_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/try_statement/jshir.mlir index 72908f99..8b095a8d 100644 --- a/maldoca/js/ir/conversion/tests/try_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/try_statement/jshir.mlir @@ -1,66 +1,66 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.try_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "error"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.catch_clause"(%0) ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.try_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jshir.try_statement"() ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "error"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.catch_clause"(%0) ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.try_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "error"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.catch_clause"(%0) ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.try_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jshir.try_statement"() ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "error"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.catch_clause"(%0) ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/try_statement/run.lit b/maldoca/js/ir/conversion/tests/try_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/try_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/try_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/unary_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/unary_expression/jshir.mlir index 030c02c6..4ebb406d 100644 --- a/maldoca/js/ir/conversion/tests/unary_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/unary_expression/jshir.mlir @@ -1,9 +1,9 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.unary_expression"(%0) <{operator_ = "-", prefix = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.unary_expression"(%0) <{operator_ = "-", prefix = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/unary_expression/run.lit b/maldoca/js/ir/conversion/tests/unary_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/unary_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/unary_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/update_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/update_expression/jshir.mlir index 2df033f8..ae5d24a8 100644 --- a/maldoca/js/ir/conversion/tests/update_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/update_expression/jshir.mlir @@ -1,9 +1,9 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.update_expression"(%0) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.update_expression"(%0) <{operator_ = "++", prefix = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/update_expression/run.lit b/maldoca/js/ir/conversion/tests/update_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/update_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/update_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/variable_declaration/jshir.mlir b/maldoca/js/ir/conversion/tests/variable_declaration/jshir.mlir index f523533f..205492fa 100644 --- a/maldoca/js/ir/conversion/tests/variable_declaration/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/variable_declaration/jshir.mlir @@ -1,27 +1,27 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: "jsir.variable_declaration"() <{kind = "const"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.exprs_region_end"(%2, %5) : (!jsir.any, !jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "let"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 0.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "var"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: "jsir.variable_declaration"() <{kind = "const"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier_ref"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %2 = "jsir.variable_declarator"(%0, %1) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %3 = "jsir.identifier_ref"() <{name = "d"}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %5 = "jsir.variable_declarator"(%3, %4) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.exprs_region_end"(%2, %5) : (!jsir.any, !jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/variable_declaration/run.lit b/maldoca/js/ir/conversion/tests/variable_declaration/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/variable_declaration/run.lit +++ b/maldoca/js/ir/conversion/tests/variable_declaration/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/while_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/while_statement/jshir.mlir index bb246e47..2ee0e47f 100644 --- a/maldoca/js/ir/conversion/tests/while_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/while_statement/jshir.mlir @@ -1,13 +1,13 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jshir.while_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jshir.while_statement"() ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expr_region_end"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%0) : (!jsir.any) -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/while_statement/run.lit b/maldoca/js/ir/conversion/tests/while_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/while_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/while_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/with_statement/jshir.mlir b/maldoca/js/ir/conversion/tests/with_statement/jshir.mlir index 161d8660..81ed3684 100644 --- a/maldoca/js/ir/conversion/tests/with_statement/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/with_statement/jshir.mlir @@ -1,22 +1,22 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.with_statement"(%0) ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any -// JSHIR-NEXT: "jshir.with_statement"(%1) ({ -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () -// JSHIR-NEXT: %3 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: %0 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.with_statement"(%0) ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: %1 = "jsir.identifier"() <{name = "a"}> : () -> !jsir.any +// JSIR-NEXT: "jshir.with_statement"(%1) ({ +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %2 = "jsir.identifier"() <{name = "b"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%2) : (!jsir.any) -> () +// JSIR-NEXT: %3 = "jsir.identifier"() <{name = "c"}> : () -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%3) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/with_statement/run.lit b/maldoca/js/ir/conversion/tests/with_statement/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/with_statement/run.lit +++ b/maldoca/js/ir/conversion/tests/with_statement/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/conversion/tests/yield_expression/jshir.mlir b/maldoca/js/ir/conversion/tests/yield_expression/jshir.mlir index 60c580b6..62d8493f 100644 --- a/maldoca/js/ir/conversion/tests/yield_expression/jshir.mlir +++ b/maldoca/js/ir/conversion/tests/yield_expression/jshir.mlir @@ -1,22 +1,22 @@ -// JSHIR: "jsir.file"() <{comments = []}> ({ -// JSHIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ -// JSHIR-NEXT: "jsir.function_declaration"() <{async = false, generator = true, id = #jsir, , "gen", 10, 13, 1, "gen">}> ({ -// JSHIR-NEXT: "jsir.exprs_region_end"() : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: "jshir.block_statement"() ({ -// JSHIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %1 = "jsir.yield_expression"(%0) <{delegate = false}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () -// JSHIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any -// JSHIR-NEXT: %4 = "jsir.array_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any -// JSHIR-NEXT: %5 = "jsir.yield_expression"(%4) <{delegate = true}> : (!jsir.any) -> !jsir.any -// JSHIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }, { -// JSHIR-NEXT: ^bb0: -// JSHIR-NEXT: }) : () -> () -// JSHIR-NEXT: }) : () -> () +// JSIR: "jsir.file"() <{comments = []}> ({ +// JSIR-NEXT: "jsir.program"() <{source_type = "script"}> ({ +// JSIR-NEXT: "jsir.function_declaration"() <{async = false, generator = true, id = #jsir, , "gen", 10, 13, 1, "gen">}> ({ +// JSIR-NEXT: "jsir.exprs_region_end"() : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: "jshir.block_statement"() ({ +// JSIR-NEXT: %0 = "jsir.numeric_literal"() <{extra = #jsir, value = 1.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %1 = "jsir.yield_expression"(%0) <{delegate = false}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%1) : (!jsir.any) -> () +// JSIR-NEXT: %2 = "jsir.numeric_literal"() <{extra = #jsir, value = 2.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %3 = "jsir.numeric_literal"() <{extra = #jsir, value = 3.000000e+00 : f64}> : () -> !jsir.any +// JSIR-NEXT: %4 = "jsir.array_expression"(%2, %3) : (!jsir.any, !jsir.any) -> !jsir.any +// JSIR-NEXT: %5 = "jsir.yield_expression"(%4) <{delegate = true}> : (!jsir.any) -> !jsir.any +// JSIR-NEXT: "jsir.expression_statement"(%5) : (!jsir.any) -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }, { +// JSIR-NEXT: ^bb0: +// JSIR-NEXT: }) : () -> () +// JSIR-NEXT: }) : () -> () diff --git a/maldoca/js/ir/conversion/tests/yield_expression/run.lit b/maldoca/js/ir/conversion/tests/yield_expression/run.lit index c7362e4f..34afe877 100644 --- a/maldoca/js/ir/conversion/tests/yield_expression/run.lit +++ b/maldoca/js/ir/conversion/tests/yield_expression/run.lit @@ -1,7 +1,7 @@ // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ // RUN: --passes "source2ast,ast2hir" \ -// RUN: | FileCheck --check-prefix JSHIR "$(dirname "${INPUT}")"/jshir.mlir +// RUN: | FileCheck --check-prefix JSIR "$(dirname "${INPUT}")"/jshir.mlir // RUN: INPUT=%s && \ // RUN: jsir_gen --input_file "$(dirname "${INPUT}")"/input.js \ diff --git a/maldoca/js/ir/generate_tests.py b/maldoca/js/ir/generate_tests.py index a605a391..b56ff17f 100644 --- a/maldoca/js/ir/generate_tests.py +++ b/maldoca/js/ir/generate_tests.py @@ -108,7 +108,7 @@ def get_extra_args( def get_check_command(test_config: TestConfig) -> str: output_file = test_config.output_file - prefix = test_config.prefix or "JSHIR" + prefix = test_config.prefix or "JSIR" if test_config.output_type == "analysis": return f'diff "$(dirname %s)"/{output_file} -' else: