Skip to content

Commit

Permalink
Merge pull request #86 from Shopify/graalvm-24.0.0-support
Browse files Browse the repository at this point in the history
Add support for Truffle 24.0.0 and Graal for JDK 22
  • Loading branch information
nirvdrum authored Mar 21, 2024
2 parents 669e178 + 456f492 commit 623cd0a
Show file tree
Hide file tree
Showing 222 changed files with 276 additions and 176 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Bug Fixes:

Changes:

* Support running with GraalVM 24.0+ (#86, @nirvdrum).

# 0.15

Expand Down
2 changes: 1 addition & 1 deletion examples/fib-java.bgv.gz
2 changes: 1 addition & 1 deletion examples/fib-js.bgv.gz
2 changes: 1 addition & 1 deletion examples/fib-ruby.bgv.gz
Binary file added examples/graalvm-ce-java22-24.0.0/fib-java.bgv.gz
Binary file not shown.
Binary file added examples/graalvm-ce-java22-24.0.0/fib-js.bgv.gz
Binary file not shown.
Binary file added examples/graalvm-ce-java22-24.0.0/fib-ruby.bgv.gz
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added examples/graalvm-gftc-java22-24.0.0/fib-js.bgv.gz
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 1 addition & 1 deletion examples/java/exampleArithOperator.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleArrayAllocation.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleArrayRead.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleArrayWrite.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleCatch.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleCompareOperator.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleDoubleSynchronized.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleExactArith.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleFieldRead.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleFieldWrite.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleFor.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleFullEscape.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleIf.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleIfNeverTaken.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleInstanceOfManyImpls.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleInstanceOfOneImpl.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleIntSwitch.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleInterfaceCallManyImpls.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleInterfaceCallOneImpl.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleLocalSynchronized.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleLocalVariables.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleLocalVariablesState.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleNestedWhile.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleNestedWhileBreak.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleNoEscape.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleObjectAllocation.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/examplePartialEscape.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/examplePhi.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleSimpleCall.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleStamp.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleStaticCall.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleStringSwitch.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleSynchronized.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleThrow.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleThrowCatch.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleUnsafeRead.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleUnsafeWrite.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleWhile.bgv.gz
2 changes: 1 addition & 1 deletion examples/java/exampleWhileBreak.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_arith_operator.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_array_allocation.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_array_read.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_array_write.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_compare_operator.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_field_read.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_field_write.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_for.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_full_escape.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_if.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_if_never_taken.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_instance_of.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_int_switch.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_local_variables.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_local_variables_state.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_nested_while.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_no_escape.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_object_allocation.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_partial_escape.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_phi.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_polymorphic_receiver.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_raise.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_raise_rescue.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_rescue.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_simple_call.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_stamp.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_string_switch.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_while.bgv.gz
2 changes: 1 addition & 1 deletion examples/ruby/example_while_break.bgv.gz
9 changes: 5 additions & 4 deletions lib/seafoam/commands.rb
Original file line number Diff line number Diff line change
Expand Up @@ -394,19 +394,20 @@ def describe(name, formatter_module, *args)
description.node_counts[simple_node_class] += 1

case node_class
when "org.graalvm.compiler.nodes.IfNode"
when "org.graalvm.compiler.nodes.IfNode", "jdk.graal.compiler.nodes.IfNode"
description.branches = true
when "org.graalvm.compiler.nodes.LoopBeginNode"
when "org.graalvm.compiler.nodes.LoopBeginNode", "jdk.graal.compiler.nodes.LoopBeginNode"
description.loops = true
when "org.graalvm.compiler.nodes.InvokeNode", "org.graalvm.compiler.nodes.InvokeWithExceptionNode"
when "org.graalvm.compiler.nodes.InvokeNode", "org.graalvm.compiler.nodes.InvokeWithExceptionNode",
"jdk.graal.compiler.nodes.InvokeNode", "jdk.graal.compiler.nodes.InvokeWithExceptionNode"
description.calls = true
end
elsif node.props[:synthetic_class]
description.node_counts["*" + node.props[:synthetic_class]] += 1
end

description.deopts = graph.nodes[0].outputs.map(&:to)
.all? { |t| t.node_class == "org.graalvm.compiler.nodes.DeoptimizeNode" }
.all? { |t| t.node_class.end_with?(".compiler.nodes.DeoptimizeNode") }
end

formatter = formatter_module::DescribeFormatter.new(graph, description)
Expand Down
2 changes: 2 additions & 0 deletions lib/seafoam/graal/pi.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ def follow_pi_object(node)
PI_NODES = [
"org.graalvm.compiler.nodes.PiNode",
"org.graalvm.compiler.nodes.PiArrayNode",
"jdk.graal.compiler.nodes.PiNode",
"jdk.graal.compiler.nodes.PiArrayNode",
]
end
end
Expand Down
Loading

0 comments on commit 623cd0a

Please sign in to comment.