hg: graal/graal: 26 new changesets
doug.simon at oracle.com
doug.simon at oracle.com
Sat Dec 8 18:03:50 PST 2012
Changeset: b914b9b4c578
Author: Gilles Duboscq <duboscq at ssw.jku.at>
Date: 2012-12-03 13:53 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/b914b9b4c578
graal.graph refactorings
Common out NodeInputsIterable and NodeSuccessorsIterable
Remove NodeUsagesList.size, use .count instead
Change return type of Node.usages to NodeIterable<Node>
! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java
! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/TypeSystemTest.java
! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java
! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java
! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java
+ graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClassIterable.java
- graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeInputsIterable.java
- graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeSuccessorsIterable.java
! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeUsagesList.java
! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EndNode.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java
! graal/com.oracle.graal.printer/src/com/oracle/graal/printer/BinaryGraphPrinter.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java
! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java
Changeset: ab65fa23f8e9
Author: Gilles Duboscq <duboscq at ssw.jku.at>
Date: 2012-12-03 13:56 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/ab65fa23f8e9
Remove overloading of filter(Class<F>) in NodeIterable<Node> returned by Graph.getNodes() : getNodes().filter(MergeNode.class) is not the same as getNodes(MergeNode.class)
! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java
Changeset: 1baf7f1e3f23
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-03 15:32 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/1baf7f1e3f23
decoupled C++ Graal runtime from C1
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java
! graal/com.oracle.graal.interpreter/src/com/oracle/graal/interpreter/BytecodeInterpreter.java
! make/bsd/makefiles/graal.make
! make/bsd/makefiles/vm.make
! make/linux/makefiles/graal.make
! make/linux/makefiles/vm.make
! make/solaris/makefiles/graal.make
! make/solaris/makefiles/vm.make
! src/cpu/x86/vm/c1_Runtime1_x86.cpp
+ src/cpu/x86/vm/graalGlobals_x86.hpp
+ src/cpu/x86/vm/graalRuntime_x86.cpp
+ src/cpu/x86/vm/graalStubAssembler_x86.cpp
! src/cpu/x86/vm/sharedRuntime_x86_32.cpp
! src/share/vm/c1/c1_globals.hpp
! src/share/vm/code/codeBlob.cpp
! src/share/vm/code/codeBlob.hpp
! src/share/vm/code/compiledIC.cpp
! src/share/vm/code/nmethod.cpp
! src/share/vm/code/nmethod.hpp
! src/share/vm/compiler/abstractCompiler.hpp
! src/share/vm/compiler/compileBroker.cpp
! src/share/vm/compiler/oopMap.cpp
! src/share/vm/graal/graalCodeInstaller.cpp
! src/share/vm/graal/graalCompiler.cpp
! src/share/vm/graal/graalCompiler.hpp
! src/share/vm/graal/graalCompilerToVM.cpp
! src/share/vm/graal/graalEnv.cpp
+ src/share/vm/graal/graalGlobals.cpp
+ src/share/vm/graal/graalGlobals.hpp
! src/share/vm/graal/graalRuntime.cpp
! src/share/vm/graal/graalRuntime.hpp
! src/share/vm/interpreter/interpreter.cpp
! src/share/vm/memory/allocation.hpp
! src/share/vm/oops/klass.hpp
! src/share/vm/precompiled/precompiled.hpp
! src/share/vm/prims/jvm.cpp
! src/share/vm/runtime/arguments.cpp
! src/share/vm/runtime/arguments.hpp
! src/share/vm/runtime/compilationPolicy.cpp
! src/share/vm/runtime/globals.cpp
! src/share/vm/runtime/globals.hpp
! src/share/vm/runtime/globals_extension.hpp
! src/share/vm/runtime/safepoint.cpp
! src/share/vm/runtime/sharedRuntime.cpp
! src/share/vm/runtime/thread.cpp
! src/share/vm/utilities/globalDefinitions.hpp
! src/share/vm/utilities/top.hpp
Changeset: ce248dc0a656
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-03 17:54 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/ce248dc0a656
removed all Graal modifications to ci and c1
! src/cpu/x86/vm/c1_MacroAssembler_x86.cpp
! src/cpu/x86/vm/c1_MacroAssembler_x86.hpp
! src/cpu/x86/vm/c1_Runtime1_x86.cpp
! src/cpu/x86/vm/c1_globals_x86.hpp
! src/share/vm/c1/c1_Runtime1.cpp
! src/share/vm/c1/c1_Runtime1.hpp
! src/share/vm/ci/ciEnv.cpp
! src/share/vm/ci/ciEnv.hpp
! src/share/vm/ci/ciKlass.cpp
! src/share/vm/ci/ciObjectFactory.cpp
! src/share/vm/ci/ciUtilities.hpp
! src/share/vm/graal/graalCompiler.cpp
! src/share/vm/graal/graalCompilerToVM.cpp
! src/share/vm/graal/graalEnv.cpp
! src/share/vm/graal/graalEnv.hpp
! src/share/vm/prims/jni.cpp
Changeset: 4632b14e56dd
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:44 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/4632b14e56dd
Snippets cannot have speculative optimizations since they have to be valid for the entire run of the VM
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java
Changeset: b16fdf354ba5
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:46 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/b16fdf354ba5
Assertion in Java code to prevent crash in native code
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java
Changeset: 04632e376bd8
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:49 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/04632e376bd8
Provide Thread context class loader to getMirrorOrFail. This is a workaround until the Graal API is complete enough so that getMirrorOrFail is not necessary at all.
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java
Changeset: 3a2f8b313bc5
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:50 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/3a2f8b313bc5
Allow VM-specific lowering of FixedGuardNode
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedGuardNode.java
Changeset: 32a16dd8d941
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:51 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/32a16dd8d941
When a hub has Kind.Object, the hub is never null. Preserve that information it the stamp of the LoadHubNode.
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadHubNode.java
Changeset: b5ea2594a644
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:52 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/b5ea2594a644
Add accessor
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewMultiArrayNode.java
Changeset: f7e38b3950b3
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 10:53 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/f7e38b3950b3
Make method accessible from the outside
! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java
Changeset: 3de18d9cd04e
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 11:02 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/3de18d9cd04e
Remove a usasge of getMirrorOrFail
! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippet.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java
Changeset: c41a958a3923
Author: Christian Wimmer <christian.wimmer at oracle.com>
Date: 2012-12-04 11:05 -0800
URL: http://hg.openjdk.java.net/graal/graal/rev/c41a958a3923
Defer lowering to next iteration when the CFG was changed by a previous lowering so that no lastFixedNode is available
! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java
Changeset: 4f62a7fa7f9f
Author: Lukas Stadler <lukas.stadler at jku.at>
Date: 2012-12-05 13:56 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/4f62a7fa7f9f
sort the fields returned by getInstanceFields by offset
! graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaType.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java
Changeset: a818db37b7be
Author: Lukas Stadler <lukas.stadler at jku.at>
Date: 2012-12-05 13:57 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/a818db37b7be
unify object reallocation code for c2 and Graal
! src/share/vm/runtime/deoptimization.cpp
Changeset: ae1f36911743
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-06 14:01 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/ae1f36911743
created shared, cached exceptions with empty stack traces for the implementation of the -G:+OmitHotExceptionStacktrace option. This also avoids the issue of having an object embedded in compiled code without an external strong reference to the same object (objects in compiled code are weak references in HotSpot)
! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java
Changeset: 045c5f8ae689
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 11:07 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/045c5f8ae689
modified code installation to handle debug info that only contains oop maps but no frame information
! src/share/vm/graal/graalCodeInstaller.cpp
Changeset: eb62c63c4549
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 11:09 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/eb62c63c4549
made word type rewriting do stamp inference so that word typed phis are handled correctly
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/WordTypeRewriterPhase.java
Changeset: c85aecfee9e4
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 11:12 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/c85aecfee9e4
made snippet template specialization support ConstantParameters of type Word
added access to the specialized graph from outside a SnippetTemplate
allowed an AbstractTemplate subclass to be a snippet holder (i.e., implements SnippetsInterface)
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java
Changeset: 283fe237085b
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 11:14 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/283fe237085b
tightened first parameter type for LIRGeneratorTool.emitCall()
! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java
Changeset: 445193cc2a7d
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 15:12 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/445193cc2a7d
added support for writing stubs in Java and wrote the TLAB fast refill stub
! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeCacheProvider.java
! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java
! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DirectCallOp.java
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64IndirectCallOp.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotRuntimeCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java
+ graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceSlowStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VMErrorNode.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/HotSpotSnippetUtils.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/MonitorSnippets.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/NewObjectSnippets.java
+ graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java
+ graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java
! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java
! src/share/vm/graal/graalCompilerToVM.cpp
Changeset: ae69cd8c08a9
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 16:01 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/ae69cd8c08a9
rename: RuntimeCall -> RuntimeCallTarget
! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeCacheProvider.java
- graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/RuntimeCall.java
+ graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/RuntimeCallTarget.java
! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java
! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java
! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotRuntimeCallTarget.java < graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotRuntimeCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorEnterStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorExitStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceSlowStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewMultiArrayStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VMErrorNode.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VerifyOopStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/SystemSnippets.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java
! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java
! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/RuntimeCallNode.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java
! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Log.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/MathSnippetsX86.java
Changeset: 6c46172c04bf
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 18:26 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/6c46172c04bf
consolidated new_type_array and new_object_array stubs into one as there no difference between them
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/NewObjectSnippets.java
! src/cpu/x86/vm/graalRuntime_x86.cpp
! src/share/vm/graal/graalCompilerToVM.cpp
! src/share/vm/graal/graalRuntime.cpp
! src/share/vm/graal/graalRuntime.hpp
Changeset: 8c02d320a1ac
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 23:35 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/8c02d320a1ac
removed unsafe injection of a new object constant into compiler graph
! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java
Changeset: 88d626e2c2a8
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 23:38 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/88d626e2c2a8
added TLAB fast refill stub for array allocation
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVM.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVMImpl.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/InitializeArrayNode.java
+ graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArraySlowStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/HotSpotSnippetUtils.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/NewObjectSnippets.java
+ graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewArrayStub.java
! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java
! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/WordTypeRewriterPhase.java
! src/share/vm/graal/graalCompilerToVM.cpp
Changeset: 46bad05d39b1
Author: Doug Simon <doug.simon at oracle.com>
Date: 2012-12-07 23:41 +0100
URL: http://hg.openjdk.java.net/graal/graal/rev/46bad05d39b1
removed declaration of temps (no longer) used by the monitorenter/monitorexits stubs
! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java
More information about the graal-dev
mailing list