From Vasanth.Venkatachalam at amd.com Fri Mar 1 11:07:02 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Fri, 1 Mar 2013 19:07:02 +0000 Subject: question about testing arrays Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> Hi, My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: public static int test1Snippet(int array1[], int array2[]) { return array1[0]* array2[0] + array1[1] *array2[1]; } For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE mode: USE flags: [REG] Unexpected value: Constant int[0|0x0] scope: GraalCompiler.BackEnd.LIRGen.InterceptException Exception occurred in scope: GraalCompiler.BackEnd.LIRGen.InterceptException Context obj com.oracle.graal.graph.GraalInternalError: should not reach here at node: 12|Guard Context obj com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) com.oracle.graal.graph.GraalInternalError: should not reach here at node: 12|Guard at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) at com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGenerator.java:78) From thomas.wuerthinger at oracle.com Fri Mar 1 12:21:04 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Fri, 1 Mar 2013 21:21:04 +0100 Subject: question about testing arrays In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> Message-ID: <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> Vasanth, Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? - thomas On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: > Hi, > > My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. > > Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: > > public static int test1Snippet(int array1[], int array2[]) { > > return array1[0]* array2[0] + array1[1] *array2[1]; > } > > For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? > > instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE > mode: USE flags: [REG] > Unexpected value: Constant int[0|0x0] > scope: GraalCompiler.BackEnd.LIRGen.InterceptException > Exception occurred in scope: GraalCompiler.BackEnd.LIRGen.InterceptException > Context obj com.oracle.graal.graph.GraalInternalError: should not reach here > at node: 12|Guard > Context obj com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b > 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) > com.oracle.graal.graph.GraalInternalError: should not reach here > at node: 12|Guard > at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) > at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) > at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) > at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) > at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) > at com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla > at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) > at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) > at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) > at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) > at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) > at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) > at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) > at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGenerator.java:78) > > From Vasanth.Venkatachalam at amd.com Fri Mar 1 13:21:46 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Fri, 1 Mar 2013 21:21:46 +0000 Subject: question about testing arrays In-Reply-To: <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> Thomas, I'm not proposing that we remove the array bounds check. I'm just trying to understand what I need to do to get the below test case working so that I can see the code being generated, just as in your simple addition test case. From the stack trace I see that Graal is trying to generate a guard node and this in turn emits a CompareBranch node, which seems to be getting some unexpected values. Does this mean I have not implemented the emitCompareBranch method properly? I just modeled it after the implementation that you and Christian checked in. Or is there some other issue here? Vasanth -----Original Message----- From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] Sent: Friday, March 01, 2013 2:21 PM To: Venkatachalam, Vasanth Cc: graal-dev at openjdk.java.net Subject: Re: question about testing arrays Vasanth, Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? - thomas On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: > Hi, > > My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. > > Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: > > public static int test1Snippet(int array1[], int array2[]) { > > return array1[0]* array2[0] + array1[1] *array2[1]; } > > For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? > > instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE > mode: USE flags: [REG] > Unexpected value: Constant int[0|0x0] > scope: GraalCompiler.BackEnd.LIRGen.InterceptException > Exception occurred in scope: > GraalCompiler.BackEnd.LIRGen.InterceptException > Context obj com.oracle.graal.graph.GraalInternalError: should not reach here > at node: 12|Guard > Context obj > com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> > 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) > com.oracle.graal.graph.GraalInternalError: should not reach here > at node: 12|Guard > at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) > at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) > at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) > at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) > at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) > at > com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla > at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) > at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) > at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) > at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) > at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) > at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) > at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) > at > com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGen > erator.java:78) > > From doug.simon at oracle.com Sat Mar 2 18:00:11 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Sun, 03 Mar 2013 02:00:11 +0000 Subject: hg: graal/graal: 71 new changesets Message-ID: <20130303020403.EBC16477E8@hg.openjdk.java.net> Changeset: c052cfe3cae3 Author: Michael Haupt Date: 2013-02-25 10:49 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c052cfe3cae3 let CodeUtil.getCallingConvention() honour receivers (if any) ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeUtil.java Changeset: 674a8b9e62f8 Author: Thomas Wuerthinger Date: 2013-02-25 16:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/674a8b9e62f8 Remove unused fields in TargetDescription. Use Unsafe.pageSize(). ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/TargetDescription.java ! graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/BasicPTXTest.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/AMD64HotSpotBackend.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64SafepointOp.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/HotSpotSnippetUtils.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: d6086afdc642 Author: Lukas Stadler Date: 2013-02-25 18:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d6086afdc642 fix livein computation in liveness analysis ! graal/com.oracle.graal.java/src/com/oracle/graal/java/BciBlockMapping.java Changeset: 4969921f57b7 Author: Christian Humer Date: 2013-02-18 19:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4969921f57b7 Renamed generated specialize to specializeAndExecute. Added call to deoptimize in uninitialized and in specializeAndExecute. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/TruffleTypes.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java Changeset: 4cbe062678ba Author: Christian Humer Date: 2013-02-18 20:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4cbe062678ba Implemented line wrapping for code writer. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/codewriter/AbstractCodeWriter.java Changeset: 0110e781b6fa Author: Christian Humer Date: 2013-02-19 11:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0110e781b6fa Fixed generated generic does not need an else block. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/TernaryNode.java Changeset: 91cc98eae8ee Author: Christian Humer Date: 2013-02-19 14:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/91cc98eae8ee Refactor guard creation methods are not flexible enough to handle two if guards. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeExecutableElement.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeTreeBuilder.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeVariableElement.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java Changeset: 06a7cd6aaf00 Author: Christian Humer Date: 2013-02-19 17:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/06a7cd6aaf00 Casting is now done on demand using local variables for explicit guards. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ActualParameter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java Changeset: 698cd036a1ca Author: Christian Humer Date: 2013-02-19 17:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/698cd036a1ca Added a ternary operator to simple language to test short circuit specialization. + graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/TernaryTest.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/NodeFactory.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/TernaryNode.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Parser.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Scanner.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/SimpleLanguage.atg Changeset: 268d3e74191e Author: Christian Humer Date: 2013-02-19 17:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/268d3e74191e Merge. - src/share/vm/graal/graalVmIds.cpp - src/share/vm/graal/graalVmIds.hpp Changeset: 85891f9c2197 Author: Christian Humer Date: 2013-02-25 12:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/85891f9c2197 Support for varargs parameters in code writer. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/codewriter/AbstractCodeWriter.java Changeset: e25ad0220267 Author: Christian Humer Date: 2013-02-25 13:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e25ad0220267 Codewriter now supports writing generic type hierarchies and wildcards. Added a method to resolve a common base type out of multiple types. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Utils.java Changeset: 9aea719e6e98 Author: Christian Humer Date: 2013-02-25 13:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9aea719e6e98 A few convenience additions to CodeTreeBuilder. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeTreeBuilder.java Changeset: f4be7a2e783c Author: Christian Humer Date: 2013-02-25 13:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f4be7a2e783c Fixed error messages in parser. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Changeset: 8e56c6951c86 Author: Christian Humer Date: 2013-02-25 13:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8e56c6951c86 Minor refactoring. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemParser.java Changeset: 6e4fb0ccebb1 Author: Christian Humer Date: 2013-02-25 13:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6e4fb0ccebb1 Generated factories implement the new NodeFactory interface. + graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/NodeFactory.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java Changeset: a4a8909a6096 Author: Christian Humer Date: 2013-02-25 13:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a4a8909a6096 Merge. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Changeset: c8e1c5abf6ed Author: Christian Humer Date: 2013-02-25 13:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c8e1c5abf6ed Organize imports now handles generic and array types properly. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/codewriter/OrganizedImports.java Changeset: 4958cbdbf360 Author: Christian Humer Date: 2013-02-25 14:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4958cbdbf360 Fixed minor bugs in NodeFactory generation. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java Changeset: 3c68170fc9b0 Author: Christian Humer Date: 2013-02-25 17:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3c68170fc9b0 Fixed a visibility bug in NodeFactory generation. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Changeset: dbbdc0a30a16 Author: Christian Humer Date: 2013-02-25 20:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/dbbdc0a30a16 Merge. Changeset: c6d003891de0 Author: Roland Schatz Date: 2013-02-26 12:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c6d003891de0 Get rid of all direct usages of Address outside of backend. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrier.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IndexedLocationNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LocationNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectReadNode.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectStoreNode.java Changeset: d1cffd1990d5 Author: Roland Schatz Date: 2013-02-26 12:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d1cffd1990d5 Comment cleanup. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java Changeset: 200d0dc18a58 Author: Lukas Stadler Date: 2013-02-12 14:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/200d0dc18a58 remove dependency on "latest possible" schedule from InstanceOfSnippetsTemplate ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java Changeset: b66a826acf4b Author: Lukas Stadler Date: 2013-02-13 15:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b66a826acf4b add location identity to MemoryCheckpoint and let WriteNode implement MemoryCheckpoint ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StartNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MemoryCheckpoint.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/RuntimeCallNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteMemoryCheckpointNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java Changeset: 7c251679c07f Author: Lukas Stadler Date: 2013-02-26 14:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7c251679c07f javadoc for MemoryCheckpoint ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MemoryCheckpoint.java Changeset: b66708ba752b Author: Lukas Stadler Date: 2013-02-13 15:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b66708ba752b remove dependency on "latest possible" schedule from OnStackReplacementPhase ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java Changeset: f4aec4c242ff Author: Lukas Stadler Date: 2013-02-13 17:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f4aec4c242ff fix for OSR_MIGRATION_END descriptor ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java Changeset: 7a5bbcc36bb2 Author: Lukas Stadler Date: 2013-02-26 16:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7a5bbcc36bb2 add location identity to Pointer read and write operations ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/AESCryptSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CheckCastSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CipherBlockChainingSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ClassSubstitutions.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/InstanceOfSnippets.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/snippets/ObjectCloneSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ThreadSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/TypeCheckSnippetUtils.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.nodes/src/com/oracle/graal/nodes/extended/LocationNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Pointer.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: cb7bab0fd666 Author: Lukas Stadler Date: 2013-02-26 16:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/cb7bab0fd666 use predefined schedule in GraphPrinterDumpHandler ! graal/com.oracle.graal.printer/src/com/oracle/graal/printer/GraphPrinterDumpHandler.java Changeset: 741884454253 Author: Lukas Stadler Date: 2013-02-13 18:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/741884454253 remove MergeableBlockState ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ReentrantBlockIterator.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java Changeset: 886990f21773 Author: Lukas Stadler Date: 2013-02-26 17:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/886990f21773 memory-aware scheduling phase + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/MemoryScheduleTest.java ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeMap.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/ControlFlowGraph.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: ace410a10aca Author: Lukas Stadler Date: 2013-02-26 17:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ace410a10aca fix for ObjectCloneNode ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectCloneNode.java Changeset: f60e8df9ed11 Author: Lukas Stadler Date: 2013-02-26 17:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f60e8df9ed11 simplification and docs for OnStackReplacementPhase ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java Changeset: 9934f49e09db Author: Lukas Stadler Date: 2013-02-26 17:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9934f49e09db new ReentrantNodeIterator + graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ReentrantNodeIterator.java Changeset: d2790497ce71 Author: Lukas Stadler Date: 2013-02-26 17:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d2790497ce71 FloatingReadPhase changes to accomodate new scheduling behavior ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java Changeset: 33dfae47db83 Author: Lukas Stadler Date: 2013-02-26 17:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/33dfae47db83 small change to ReentrantBlockIterator ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ReentrantBlockIterator.java Changeset: e56dda646972 Author: Lukas Stadler Date: 2013-02-26 17:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e56dda646972 rename CheckCastElimination option to ConditionalElimination ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ReentrantNodeIterator.java Changeset: 189864ef6cc2 Author: Lukas Stadler Date: 2013-02-26 17:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/189864ef6cc2 more metrics for CullFrameStatesPhase ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/CullFrameStatesPhase.java Changeset: 1474fe91323c Author: Lukas Stadler Date: 2013-02-26 17:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1474fe91323c create debug scope for graph building during inlining ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningPhase.java Changeset: eb41b39fd1e4 Author: Roland Schatz Date: 2013-02-26 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/eb41b39fd1e4 Convert Value fields to Address. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXMove.java Changeset: d13bf8dae495 Author: Roland Schatz Date: 2013-02-26 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d13bf8dae495 Code formatter. ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Changeset: 124b28240347 Author: Roland Schatz Date: 2013-02-26 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/124b28240347 Separate STACK and ADDR nodes in LIR. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXMove.java Changeset: cc9b45598a4f Author: Roland Schatz Date: 2013-02-26 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/cc9b45598a4f Change argument order to be consistent with the rest of the backend. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/GetObjectAddressNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/RegisterNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: 14b52a260099 Author: Roland Schatz Date: 2013-02-26 19:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/14b52a260099 Separate store op for storing constants. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Changeset: 45bce3579308 Author: Thomas Wuerthinger Date: 2013-02-25 18:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/45bce3579308 Remove unused code in backend. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Architecture.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/FrameMap.java Changeset: 3828c6119073 Author: Thomas Wuerthinger Date: 2013-02-26 11:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3828c6119073 Merge. Changeset: d99bce9bbbb2 Author: Thomas Wuerthinger Date: 2013-02-26 13:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d99bce9bbbb2 Remove canStoreConstant from LIRGeneratorTool. ! 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: 938b8209b10b Author: Thomas Wuerthinger Date: 2013-02-26 14:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/938b8209b10b Merge. ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: 8bf25fab6e83 Author: Thomas Wuerthinger Date: 2013-02-26 14:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8bf25fab6e83 Fix unused import warnings. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Architecture.java Changeset: caa932ca99b3 Author: Thomas Wuerthinger Date: 2013-02-26 15:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/caa932ca99b3 Removed unused JumpOp. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Changeset: b8f387456757 Author: Thomas Wuerthinger Date: 2013-02-26 17:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b8f387456757 Merge. Changeset: 7f3fc1210e8c Author: Thomas Wuerthinger Date: 2013-02-26 20:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7f3fc1210e8c Merge. Changeset: d81109e2d7be Author: Thomas Wuerthinger Date: 2013-02-26 20:10 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d81109e2d7be Merge. ! 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: fed868d1aefd Author: Lukas Stadler Date: 2013-02-27 09:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fed868d1aefd simplify GraphBuilderConfiguration and add omitAllExceptionEdges ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CompiledMethodTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderConfiguration.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: f7b40e9d490c Author: Lukas Stadler Date: 2013-02-27 14:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f7b40e9d490c ValueProxyNodes for memory locations at loop exits ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java Changeset: 649379d3f88d Author: Lukas Stadler Date: 2013-02-27 15:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/649379d3f88d don't kill memory proxies during RemoveValueProxyPhase ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/MemoryScheduleTest.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/RemoveValueProxyPhase.java Changeset: a58851061377 Author: Lukas Stadler Date: 2013-02-27 15:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a58851061377 rename ValueProxyNode to ProxyNode ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java ! graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragment.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java < graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/util/GraphUtil.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ReadEliminationPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/RemoveValueProxyPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.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: 1aca91e4333d Author: Lukas Stadler Date: 2013-02-27 17:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1aca91e4333d fix Word.readByte/writeByte/readShort/writeShort/readChar/writeChar ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: 21ccfe2e180b Author: Lukas Stadler Date: 2013-02-27 17:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/21ccfe2e180b small clarification for InstanceOfSnippetsTemplates ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java Changeset: 30d754a0e87c Author: Lukas Stadler Date: 2013-02-27 17:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/30d754a0e87c let UnsafeStoreNode implement MemoryCheckpoint ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java Changeset: 93a133fc03ce Author: Lukas Stadler Date: 2013-02-27 18:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/93a133fc03ce clear frame states in snippets and replace with sentries ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FrameState.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetFrameStateCleanupPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java Changeset: 14fedab0419e Author: Lukas Stadler Date: 2013-02-27 18:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/14fedab0419e improved arraycopy and Object.clone snippets ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopyNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ClassSubstitutions.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/ObjectCloneNode.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MacroNode.java Changeset: f19c4d447e73 Author: Lukas Stadler Date: 2013-02-28 11:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f19c4d447e73 more bug fixes and tests for Word read/write operations + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Pointer.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: c8f2002d2194 Author: Lukas Stadler Date: 2013-02-28 12:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c8f2002d2194 reintroduce default Word read/write operations, more tests ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Pointer.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: 38a597987357 Author: Roland Schatz Date: 2013-02-28 14:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/38a597987357 Common base class for Load and Store. ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Changeset: 0c7615691812 Author: Roland Schatz Date: 2013-02-28 14:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0c7615691812 Disallow directly storing constants in PTX. ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXMove.java Changeset: ea1c2bed2bfa Author: Roland Schatz Date: 2013-02-28 14:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ea1c2bed2bfa Common superclass for RegisterValue, StackSlot and Variable. + graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/AllocatableValue.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/RegisterValue.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/StackSlot.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/ValueUtil.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstruction.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRVerifier.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/Variable.java Changeset: 775745294caa Author: Roland Schatz Date: 2013-02-28 14:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/775745294caa Change Value to AllocatableValue in move operations. ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXMove.java Changeset: afb56ecdb083 Author: Roland Schatz Date: 2013-02-28 15:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/afb56ecdb083 Fix usage and operand flags of AMD64BitManipulationOp. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64BitManipulationOp.java Changeset: 748cb57f53cb Author: Roland Schatz Date: 2013-02-28 16:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/748cb57f53cb Cleanup Op1 in AMD64 backend. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java From thomas.wuerthinger at oracle.com Mon Mar 4 05:19:42 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Mon, 4 Mar 2013 14:19:42 +0100 Subject: question about testing arrays In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> Message-ID: <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> The issue below is that the instruction is expecting a register "REG" but got a constant as one of its operand. In that case, you need to load the constant into a register using a move first. Do most HSAIL instructions can take an inlined constant as operand? - thomas On Mar 1, 2013, at 10:21 PM, "Venkatachalam, Vasanth" wrote: > Thomas, > > I'm not proposing that we remove the array bounds check. I'm just trying to understand what I need to do to get the below test case working so that I can see the code being generated, just as in your simple addition test case. From the stack trace I see that Graal is trying to generate a guard node and this in turn emits a CompareBranch node, which seems to be getting some unexpected values. Does this mean I have not implemented the emitCompareBranch method properly? I just modeled it after the implementation that you and Christian checked in. Or is there some other issue here? > > Vasanth > > -----Original Message----- > From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] > Sent: Friday, March 01, 2013 2:21 PM > To: Venkatachalam, Vasanth > Cc: graal-dev at openjdk.java.net > Subject: Re: question about testing arrays > > Vasanth, > > Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? > > - thomas > > > On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: > >> Hi, >> >> My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. >> >> Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: >> >> public static int test1Snippet(int array1[], int array2[]) { >> >> return array1[0]* array2[0] + array1[1] *array2[1]; } >> >> For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? >> >> instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE >> mode: USE flags: [REG] >> Unexpected value: Constant int[0|0x0] >> scope: GraalCompiler.BackEnd.LIRGen.InterceptException >> Exception occurred in scope: >> GraalCompiler.BackEnd.LIRGen.InterceptException >> Context obj com.oracle.graal.graph.GraalInternalError: should not reach here >> at node: 12|Guard >> Context obj >> com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> >> 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) >> com.oracle.graal.graph.GraalInternalError: should not reach here >> at node: 12|Guard >> at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) >> at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) >> at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) >> at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) >> at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) >> at >> com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla >> at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) >> at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) >> at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) >> at >> com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGen >> erator.java:78) >> >> > > > From Vasanth.Venkatachalam at amd.com Mon Mar 4 14:03:11 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Mon, 4 Mar 2013 22:03:11 +0000 Subject: question about testing arrays In-Reply-To: <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FC37F@sausexdag06.amd.com> In my LIRGenerator source (which I modeled after the one for the ISA that was recently checked in), I noticed that the createMove instruction hasn't been implemented. Is this what's causing the issue? public static class HSAILSpillMoveFactory implements LIR.SpillMoveFactory { @Override public LIRInstruction createMove(Value result, Value input) { throw new InternalError("NYI"); } } -----Original Message----- From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] Sent: Monday, March 04, 2013 7:20 AM To: Venkatachalam, Vasanth Cc: graal-dev at openjdk.java.net Subject: Re: question about testing arrays The issue below is that the instruction is expecting a register "REG" but got a constant as one of its operand. In that case, you need to load the constant into a register using a move first. Do most HSAIL instructions can take an inlined constant as operand? - thomas On Mar 1, 2013, at 10:21 PM, "Venkatachalam, Vasanth" wrote: > Thomas, > > I'm not proposing that we remove the array bounds check. I'm just trying to understand what I need to do to get the below test case working so that I can see the code being generated, just as in your simple addition test case. From the stack trace I see that Graal is trying to generate a guard node and this in turn emits a CompareBranch node, which seems to be getting some unexpected values. Does this mean I have not implemented the emitCompareBranch method properly? I just modeled it after the implementation that you and Christian checked in. Or is there some other issue here? > > Vasanth > > -----Original Message----- > From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] > Sent: Friday, March 01, 2013 2:21 PM > To: Venkatachalam, Vasanth > Cc: graal-dev at openjdk.java.net > Subject: Re: question about testing arrays > > Vasanth, > > Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? > > - thomas > > > On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: > >> Hi, >> >> My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. >> >> Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: >> >> public static int test1Snippet(int array1[], int array2[]) { >> >> return array1[0]* array2[0] + array1[1] *array2[1]; } >> >> For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? >> >> instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE >> mode: USE flags: [REG] >> Unexpected value: Constant int[0|0x0] >> scope: GraalCompiler.BackEnd.LIRGen.InterceptException >> Exception occurred in scope: >> GraalCompiler.BackEnd.LIRGen.InterceptException >> Context obj com.oracle.graal.graph.GraalInternalError: should not reach here >> at node: 12|Guard >> Context obj >> com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> >> 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) >> com.oracle.graal.graph.GraalInternalError: should not reach here >> at node: 12|Guard >> at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) >> at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) >> at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) >> at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) >> at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) >> at >> com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla >> at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) >> at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) >> at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) >> at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) >> at >> com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGen >> erator.java:78) >> >> > > > From thomas.wuerthinger at oracle.com Mon Mar 4 14:08:12 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Mon, 4 Mar 2013 23:08:12 +0100 Subject: question about testing arrays In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FC37F@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FC37F@sausexdag06.amd.com> Message-ID: <51C39A96-529C-45E3-A4C8-3725DCDA6AD0@oracle.com> No, the issue is caused by the operand to the compare instruction not expecting a constant but a register. This is why I was asking you if an operand to an HSAIL compare instruction may also be a constant directly? Or does HSAIL require the constant be loaded into a register first? - thomas On Mar 4, 2013, at 11:03 PM, "Venkatachalam, Vasanth" wrote: > In my LIRGenerator source (which I modeled after the one for the ISA that was recently checked in), I noticed that the createMove instruction hasn't been implemented. > Is this what's causing the issue? > > public static class HSAILSpillMoveFactory implements LIR.SpillMoveFactory { > > @Override > public LIRInstruction createMove(Value result, Value input) { > throw new InternalError("NYI"); > } > } > > > -----Original Message----- > From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] > Sent: Monday, March 04, 2013 7:20 AM > To: Venkatachalam, Vasanth > Cc: graal-dev at openjdk.java.net > Subject: Re: question about testing arrays > > The issue below is that the instruction is expecting a register "REG" but got a constant as one of its operand. In that case, you need to load the constant into a register using a move first. Do most HSAIL instructions can take an inlined constant as operand? > > - thomas > > On Mar 1, 2013, at 10:21 PM, "Venkatachalam, Vasanth" wrote: > >> Thomas, >> >> I'm not proposing that we remove the array bounds check. I'm just trying to understand what I need to do to get the below test case working so that I can see the code being generated, just as in your simple addition test case. From the stack trace I see that Graal is trying to generate a guard node and this in turn emits a CompareBranch node, which seems to be getting some unexpected values. Does this mean I have not implemented the emitCompareBranch method properly? I just modeled it after the implementation that you and Christian checked in. Or is there some other issue here? >> >> Vasanth >> >> -----Original Message----- >> From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] >> Sent: Friday, March 01, 2013 2:21 PM >> To: Venkatachalam, Vasanth >> Cc: graal-dev at openjdk.java.net >> Subject: Re: question about testing arrays >> >> Vasanth, >> >> Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? >> >> - thomas >> >> >> On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: >> >>> Hi, >>> >>> My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. >>> >>> Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: >>> >>> public static int test1Snippet(int array1[], int array2[]) { >>> >>> return array1[0]* array2[0] + array1[1] *array2[1]; } >>> >>> For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? >>> >>> instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE >>> mode: USE flags: [REG] >>> Unexpected value: Constant int[0|0x0] >>> scope: GraalCompiler.BackEnd.LIRGen.InterceptException >>> Exception occurred in scope: >>> GraalCompiler.BackEnd.LIRGen.InterceptException >>> Context obj com.oracle.graal.graph.GraalInternalError: should not reach here >>> at node: 12|Guard >>> Context obj >>> com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b>> oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> >>> 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) >>> com.oracle.graal.graph.GraalInternalError: should not reach here >>> at node: 12|Guard >>> at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) >>> at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) >>> at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) >>> at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) >>> at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) >>> at >>> com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCla >>> at com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) >>> at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) >>> at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) >>> at >>> com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRGen >>> erator.java:78) >>> >>> >> >> >> > > > From Vasanth.Venkatachalam at amd.com Mon Mar 4 14:28:31 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Mon, 4 Mar 2013 22:28:31 +0000 Subject: question about testing arrays In-Reply-To: <51C39A96-529C-45E3-A4C8-3725DCDA6AD0@oracle.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FC37F@sausexdag06.amd.com> <51C39A96-529C-45E3-A4C8-3725DCDA6AD0@oracle.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FC3CF@sausexdag06.amd.com> Hi Thomas, Unfortunately I can't reveal the HSAIL spec details yet since it hasn't been released. However, I can see that the compare instruction is expecting a register but is receiving a constant. I'm trying to understand why Graal is passing a constant to that instruction. Is it because there is a part of the LIRGenerator code that I haven't implemented yet, which I need to implement? You mentioned that the constant needs to be moved into a register using a move instruction. This is why I asked below whether this could be possibly due to the move instruction not being implemented in my platform specific LIRGenerator. -----Original Message----- From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] Sent: Monday, March 04, 2013 4:08 PM To: Venkatachalam, Vasanth Cc: graal-dev at openjdk.java.net Subject: Re: question about testing arrays No, the issue is caused by the operand to the compare instruction not expecting a constant but a register. This is why I was asking you if an operand to an HSAIL compare instruction may also be a constant directly? Or does HSAIL require the constant be loaded into a register first? - thomas On Mar 4, 2013, at 11:03 PM, "Venkatachalam, Vasanth" wrote: > In my LIRGenerator source (which I modeled after the one for the ISA that was recently checked in), I noticed that the createMove instruction hasn't been implemented. > Is this what's causing the issue? > > public static class HSAILSpillMoveFactory implements > LIR.SpillMoveFactory { > > @Override > public LIRInstruction createMove(Value result, Value input) { > throw new InternalError("NYI"); > } > } > > > -----Original Message----- > From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] > Sent: Monday, March 04, 2013 7:20 AM > To: Venkatachalam, Vasanth > Cc: graal-dev at openjdk.java.net > Subject: Re: question about testing arrays > > The issue below is that the instruction is expecting a register "REG" but got a constant as one of its operand. In that case, you need to load the constant into a register using a move first. Do most HSAIL instructions can take an inlined constant as operand? > > - thomas > > On Mar 1, 2013, at 10:21 PM, "Venkatachalam, Vasanth" wrote: > >> Thomas, >> >> I'm not proposing that we remove the array bounds check. I'm just trying to understand what I need to do to get the below test case working so that I can see the code being generated, just as in your simple addition test case. From the stack trace I see that Graal is trying to generate a guard node and this in turn emits a CompareBranch node, which seems to be getting some unexpected values. Does this mean I have not implemented the emitCompareBranch method properly? I just modeled it after the implementation that you and Christian checked in. Or is there some other issue here? >> >> Vasanth >> >> -----Original Message----- >> From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] >> Sent: Friday, March 01, 2013 2:21 PM >> To: Venkatachalam, Vasanth >> Cc: graal-dev at openjdk.java.net >> Subject: Re: question about testing arrays >> >> Vasanth, >> >> Do you want to completely avoid the array bounds check for the example below (i.e., you assume all array accesses are safe), or what would be the desired behavior in case of an out-of-bounds access? >> >> - thomas >> >> >> On Mar 1, 2013, at 8:07 PM, "Venkatachalam, Vasanth" wrote: >> >>> Hi, >>> >>> My question has to do with arrays. I am implementing a new test harness for my ISA backend, modeling it after the test harness that Christian and Thomas recently checked in. >>> >>> Thomas's test example was doing a simple addition. I would like to try something involving arrays, like: >>> >>> public static int test1Snippet(int array1[], int array2[]) { >>> >>> return array1[0]* array2[0] + array1[1] *array2[1]; } >>> >>> For this type of code, it looks like Graal emits a Guard check which results in the emission of a compare-branch in the LIR, which in turn is getting some unexpected values. Does anyone have more insight into this error and the best way to work around it? Also are there are other array test examples I can look at to see how array operations may have to be implemented? >>> >>> instruction ICMP (x: int[0|0x0], y: v1|i) condition: AE >>> mode: USE flags: [REG] >>> Unexpected value: Constant int[0|0x0] >>> scope: GraalCompiler.BackEnd.LIRGen.InterceptException >>> Exception occurred in scope: >>> GraalCompiler.BackEnd.LIRGen.InterceptException >>> Context obj com.oracle.graal.graph.GraalInternalError: should not reach here >>> at node: 12|Guard >>> Context obj >>> com.oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b>> oracle.graal.compiler.hsail.HSAILLIRGenerator at 6035b93b> >>> 1) test1(com.oracle.graal.compiler.hsail.test.BasicHSAILTest) >>> com.oracle.graal.graph.GraalInternalError: should not reach here >>> at node: 12|Guard >>> at com.oracle.graal.graph.GraalInternalError.shouldNotReachHere(GraalInternalError.java:46) >>> at com.oracle.graal.lir.LIRVerifier.allowed(LIRVerifier.java:241) >>> at com.oracle.graal.lir.LIRVerifier.access$000(LIRVerifier.java:37) >>> at com.oracle.graal.lir.LIRVerifier$1.doValue(LIRVerifier.java:68) >>> at com.oracle.graal.lir.LIRInstructionClass.forEach(LIRInstructionClass.java:346) >>> at >>> com.oracle.graal.lir.LIRInstructionClass.forEachUse(LIRInstructionCl >>> a at >>> com.oracle.graal.compiler.gen.LIRGenerator.append(LIRGenerator.java:258) >>> at com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitCompareBranch(HSAILLIRGenerator.java:196) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitCompareBranch(LIRGenerator.java:634) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitBranch(LIRGenerator.java:611) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitGuardCheck(LIRGenerator.java:600) >>> at com.oracle.graal.nodes.GuardNode.generate(GuardNode.java:95) >>> at com.oracle.graal.compiler.gen.LIRGenerator.emitNode(LIRGenerator.java:460) >>> at >>> com.oracle.graal.compiler.hsail.HSAILLIRGenerator.emitNode(HSAILLIRG >>> en >>> erator.java:78) >>> >>> >> >> >> > > > From Vasanth.Venkatachalam at amd.com Mon Mar 4 16:16:42 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Tue, 5 Mar 2013 00:16:42 +0000 Subject: question about testing arrays In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FC3CF@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FB690@sausexdag06.amd.com> <261567A5-6E51-494C-B9A8-F0D42792475C@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FB71C@sausexdag06.amd.com> <33D5F89F-7344-47DA-AB06-D3B5EEA9E08B@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FC37F@sausexdag06.amd.com> <51C39A96-529C-45E3-A4C8-3725DCDA6AD0@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FC3CF@sausexdag06.amd.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FC84D@sausexdag06.amd.com> Hi Thomas, I tried running the following similar test case inside BasicPTXTest: @SuppressWarnings("all") public static int arraysquares(int array1[]) { return array1[0]; } When I run this in PTX mode, I get the error below. Can you explain how to get past this in PTX? I was initially seeing the same error in HSAIL until I implemented the Guard instruction, at which point I got the "ICMP receiving a constant" error alluded to earlier. Vasanth 1) test1(com.oracle.graal.compiler.ptx.test.BasicPTXTest) com.oracle.graal.graph.GraalInternalError: java.lang.InternalError: NYI at node: 18|!Guard at com.oracle.graal.compiler.gen.LIRGenerator.doBlock(LIRGenerator.java:381) at com.oracle.graal.compiler.GraalCompiler$3.emitBlock(GraalCompiler.java:249) at com.oracle.graal.compiler.GraalCompiler$3.run(GraalCompiler.java:236) at com.oracle.graal.debug.internal.DebugScope.executeScope(DebugScope.java:166) at com.oracle.graal.debug.internal.DebugScope.scope(DebugScope.java:154) at com.oracle.graal.debug.Debug.scope(Debug.java:101) at com.oracle.graal.debug.Debug.scope(Debug.java:96) at com.oracle.graal.compiler.GraalCompiler.emitLIR(GraalCompiler.java:23 ----- -----Original Message----- From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] Sent: Monday, March 04, 2013 4:08 PM To: Venkatachalam, Vasanth Cc: graal-dev at openjdk.java.net Subject: Re: question about testing arrays No, the issue is caused by the operand to the compare instruction not expecting a constant but a register. This is why I was asking you if an operand to an HSAIL compare instruction may also be a constant directly? Or does HSAIL require the constant be loaded into a register first? - thomas From Vasanth.Venkatachalam at amd.com Wed Mar 6 11:20:18 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Wed, 6 Mar 2013 19:20:18 +0000 Subject: configuring eclipse for graal Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> Hi, I am trying to get Graal set up in Eclipse so that I can build and single step through the code. Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. For example, I get several errors like: AMD64FloatRegisters cannot be resolved (AMD64FloatRegister.java) Cannot make a static reference to the non-static field Tester_Class (Test6712835.java) many_loader cannot be resolved to a type (bug_21227.java) It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. Vasanth From michael.haupt at oracle.com Wed Mar 6 11:35:47 2013 From: michael.haupt at oracle.com (Michael Haupt) Date: Wed, 6 Mar 2013 20:35:47 +0100 Subject: configuring eclipse for graal In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> Message-ID: Vasanth, Am 06.03.2013 um 20:20 schrieb "Venkatachalam, Vasanth" : > Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". > However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. > ... > It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. > Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. generally, running mx ideinit (or mx eclipseinit) is enough to set up all .project files you need. There is no .project file in the top-level directory; they are some levels below (in the graal/com.oracle..... directories, one per project). You do not need to create an Eclipse project and import other projects into that. Please do this: * clone the Graal repository into, say, ~/graal * start Eclipse and choose that directory as the workspace * File -> Import ... -> Mercurial -> Projects from local repository * select the ~/graal directory * select all projects that appear ... that should do it. Best, Michael -- Dr. Michael Haupt | Principal Member of Technical Staff Phone: +49 331 200 7277 | Fax: +49 331 200 7561 Oracle Labs Oracle Deutschland B.V. & Co. KG, Schiffbauergasse 14 | 14467 Potsdam, Germany Oracle is committed to developing practices and products that help protect the environment From doug.simon at oracle.com Wed Mar 6 12:35:07 2013 From: doug.simon at oracle.com (Doug Simon @ Oracle) Date: Wed, 6 Mar 2013 21:35:07 +0100 Subject: configuring eclipse for graal In-Reply-To: References: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> Message-ID: <06CCC2E2-1DCD-47E8-A41E-E9A1D4FF55CF@oracle.com> On Mar 6, 2013, at 8:35 PM, Michael Haupt wrote: > Vasanth, > > Am 06.03.2013 um 20:20 schrieb "Venkatachalam, Vasanth" : >> Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". >> However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. >> ... >> It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. >> Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. > > generally, running mx ideinit (or mx eclipseinit) is enough to set up all .project files you need. There is no .project file in the top-level directory; they are some levels below (in the graal/com.oracle..... directories, one per project). > > You do not need to create an Eclipse project and import other projects into that. Please do this: > * clone the Graal repository into, say, ~/graal > * start Eclipse and choose that directory as the workspace > * File -> Import ... -> Mercurial -> Projects from local repository > * select the ~/graal directory > * select all projects that appear I've put these instructions into the wiki: https://wikis.oracle.com/display/OpenJDK/Eclipse -Doug From Vasanth.Venkatachalam at amd.com Wed Mar 6 14:00:15 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Wed, 6 Mar 2013 22:00:15 +0000 Subject: configuring eclipse for graal In-Reply-To: <06CCC2E2-1DCD-47E8-A41E-E9A1D4FF55CF@oracle.com> References: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> <06CCC2E2-1DCD-47E8-A41E-E9A1D4FF55CF@oracle.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FD182@sausexdag06.amd.com> Doug, I'm following your instructions and wanted to makes sure I'm on the right track here. I've cloned the graal repository into a directory: /home/tester/mygraal/graal. In other words, this directory contains the subfolders: agent/, build/, graal/, hotspot/ etc which were checked out of mercurial. I set my Eclipse workspace to /home/tester/mygraal/graal I went to File->Import->ProjectsfromLocalMercurialRepository and browsed for the workspace /home/tester/mygraal/graal When I selected this, only one Project appeared in the Projects window, namely graal (/home/tester/mygraal/graal). Is this what I should be seeing? If I hit Finish, I get an Invalid project description error, /home/tester/mygraal/graal overlaps the workspace location /home/tester/mygraal/graal. Vasanth Creating and Importing the Maxine Eclipse projects Run mx ideinit to create the Eclipse (and NetBeans) project configurations for all the Java projects in the Graal workspace. You use the Import Wizard to import the created/updated projects. >From the main menu bar, select File > Import... to open the Import Wizard. Select Mercurial > Projects from Local Mercurial Repository and click Next. Click the Browse... button to locate the Graal workspace. Under Projects select all the projects. Click Finish to complete the import. -----Original Message----- From: graal-dev-bounces at openjdk.java.net [mailto:graal-dev-bounces at openjdk.java.net] On Behalf Of Doug Simon @ Oracle Sent: Wednesday, March 06, 2013 2:35 PM To: graal-dev at openjdk.java.net Subject: Re: configuring eclipse for graal On Mar 6, 2013, at 8:35 PM, Michael Haupt wrote: > Vasanth, > > Am 06.03.2013 um 20:20 schrieb "Venkatachalam, Vasanth" : >> Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". >> However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. >> ... >> It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. >> Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. > > generally, running mx ideinit (or mx eclipseinit) is enough to set up all .project files you need. There is no .project file in the top-level directory; they are some levels below (in the graal/com.oracle..... directories, one per project). > > You do not need to create an Eclipse project and import other projects into that. Please do this: > * clone the Graal repository into, say, ~/graal > * start Eclipse and choose that directory as the workspace > * File -> Import ... -> Mercurial -> Projects from local repository > * select the ~/graal directory > * select all projects that appear I've put these instructions into the wiki: https://wikis.oracle.com/display/OpenJDK/Eclipse -Doug From thomas.wuerthinger at oracle.com Wed Mar 6 14:30:43 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Wed, 6 Mar 2013 23:30:43 +0100 Subject: configuring eclipse for graal In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FD182@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> <06CCC2E2-1DCD-47E8-A41E-E9A1D4FF55CF@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FD182@sausexdag06.amd.com> Message-ID: It is easier to put your workspace on some other directory. And I think you are missing running the script "./mx.sh ideinit" in the Graal root directory. Hope this helps, thomas On Mar 6, 2013, at 11:00 PM, "Venkatachalam, Vasanth" wrote: > Doug, I'm following your instructions and wanted to makes sure I'm on the right track here. > > I've cloned the graal repository into a directory: /home/tester/mygraal/graal. In other words, this directory contains the subfolders: agent/, build/, graal/, hotspot/ etc which were checked out of mercurial. > > I set my Eclipse workspace to /home/tester/mygraal/graal > > I went to File->Import->ProjectsfromLocalMercurialRepository and browsed for the workspace /home/tester/mygraal/graal > > When I selected this, only one Project appeared in the Projects window, namely graal (/home/tester/mygraal/graal). Is this what I should be seeing? > If I hit Finish, I get an Invalid project description error, /home/tester/mygraal/graal overlaps the workspace location /home/tester/mygraal/graal. > > Vasanth > > > > > > Creating and Importing the Maxine Eclipse projects > Run mx ideinit to create the Eclipse (and NetBeans) project configurations for all the Java projects in the Graal workspace. > > You use the Import Wizard to import the created/updated projects. > >> From the main menu bar, select File > Import... to open the Import Wizard. > Select Mercurial > Projects from Local Mercurial Repository and click Next. > Click the Browse... button to locate the Graal workspace. > Under Projects select all the projects. > Click Finish to complete the import. > > > -----Original Message----- > From: graal-dev-bounces at openjdk.java.net [mailto:graal-dev-bounces at openjdk.java.net] On Behalf Of Doug Simon @ Oracle > Sent: Wednesday, March 06, 2013 2:35 PM > To: graal-dev at openjdk.java.net > Subject: Re: configuring eclipse for graal > > > On Mar 6, 2013, at 8:35 PM, Michael Haupt wrote: > >> Vasanth, >> >> Am 06.03.2013 um 20:20 schrieb "Venkatachalam, Vasanth" : >>> Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". >>> However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. >>> ... >>> It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. >>> Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. >> >> generally, running mx ideinit (or mx eclipseinit) is enough to set up all .project files you need. There is no .project file in the top-level directory; they are some levels below (in the graal/com.oracle..... directories, one per project). >> >> You do not need to create an Eclipse project and import other projects into that. Please do this: >> * clone the Graal repository into, say, ~/graal >> * start Eclipse and choose that directory as the workspace >> * File -> Import ... -> Mercurial -> Projects from local repository >> * select the ~/graal directory >> * select all projects that appear > > I've put these instructions into the wiki: > > https://wikis.oracle.com/display/OpenJDK/Eclipse > > -Doug > From Vasanth.Venkatachalam at amd.com Wed Mar 6 14:41:47 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Wed, 6 Mar 2013 22:41:47 +0000 Subject: configuring eclipse for graal In-Reply-To: References: <5DD1503F815BD14889DC81D28643E3A7329FD03B@sausexdag06.amd.com> <06CCC2E2-1DCD-47E8-A41E-E9A1D4FF55CF@oracle.com> <5DD1503F815BD14889DC81D28643E3A7329FD182@sausexdag06.amd.com> Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FD1D1@sausexdag06.amd.com> Thanks. In my eclipse project explorer window, the top level directories I see include agent/, graal/, src/ , test/, and visualizer/. Eclipse tries to build everything under these directories. Is this what I need, or should I remove some of these directories from the build path? My goal is to be able to build graal and single step through its execution. Vasanth -----Original Message----- From: Thomas Wuerthinger [mailto:thomas.wuerthinger at oracle.com] Sent: Wednesday, March 06, 2013 4:31 PM To: Venkatachalam, Vasanth Cc: Doug Simon @ Oracle (doug.simon at oracle.com); graal-dev at openjdk.java.net Subject: Re: configuring eclipse for graal It is easier to put your workspace on some other directory. And I think you are missing running the script "./mx.sh ideinit" in the Graal root directory. Hope this helps, thomas On Mar 6, 2013, at 11:00 PM, "Venkatachalam, Vasanth" wrote: > Doug, I'm following your instructions and wanted to makes sure I'm on the right track here. > > I've cloned the graal repository into a directory: /home/tester/mygraal/graal. In other words, this directory contains the subfolders: agent/, build/, graal/, hotspot/ etc which were checked out of mercurial. > > I set my Eclipse workspace to /home/tester/mygraal/graal > > I went to File->Import->ProjectsfromLocalMercurialRepository and > browsed for the workspace /home/tester/mygraal/graal > > When I selected this, only one Project appeared in the Projects window, namely graal (/home/tester/mygraal/graal). Is this what I should be seeing? > If I hit Finish, I get an Invalid project description error, /home/tester/mygraal/graal overlaps the workspace location /home/tester/mygraal/graal. > > Vasanth > > > > > > Creating and Importing the Maxine Eclipse projects Run mx ideinit to > create the Eclipse (and NetBeans) project configurations for all the Java projects in the Graal workspace. > > You use the Import Wizard to import the created/updated projects. > >> From the main menu bar, select File > Import... to open the Import Wizard. > Select Mercurial > Projects from Local Mercurial Repository and click Next. > Click the Browse... button to locate the Graal workspace. > Under Projects select all the projects. > Click Finish to complete the import. > > > -----Original Message----- > From: graal-dev-bounces at openjdk.java.net > [mailto:graal-dev-bounces at openjdk.java.net] On Behalf Of Doug Simon @ > Oracle > Sent: Wednesday, March 06, 2013 2:35 PM > To: graal-dev at openjdk.java.net > Subject: Re: configuring eclipse for graal > > > On Mar 6, 2013, at 8:35 PM, Michael Haupt wrote: > >> Vasanth, >> >> Am 06.03.2013 um 20:20 schrieb "Venkatachalam, Vasanth" : >>> Following the instructions in https://wikis.oracle.com/display/OpenJDK/Instructions I ran "mx ideinit". >>> However, I don't see a .project file generated in the top directory. I created a new Eclipse project and imported all the directories at the top level, but the integration wasn't as seamless as I expected. >>> ... >>> It looks like I may have to configure Eclipse to pick up on dependencies that have been manually specified in the mx/projects file. >>> Can someone explain the proper way to configure the Eclipse environment? I looked around for additional documentation but the above link was all I found. >> >> generally, running mx ideinit (or mx eclipseinit) is enough to set up all .project files you need. There is no .project file in the top-level directory; they are some levels below (in the graal/com.oracle..... directories, one per project). >> >> You do not need to create an Eclipse project and import other projects into that. Please do this: >> * clone the Graal repository into, say, ~/graal >> * start Eclipse and choose that directory as the workspace >> * File -> Import ... -> Mercurial -> Projects from local repository >> * select the ~/graal directory >> * select all projects that appear > > I've put these instructions into the wiki: > > https://wikis.oracle.com/display/OpenJDK/Eclipse > > -Doug > From doug.simon at oracle.com Thu Mar 7 02:34:49 2013 From: doug.simon at oracle.com (Doug Simon @ Oracle) Date: Thu, 7 Mar 2013 11:34:49 +0100 Subject: Update Eclipse project configurations Message-ID: <162CE16C-82B5-4786-9FC6-13987D7960D4@oracle.com> After you have pulled http://hg.openjdk.java.net/graal/graal/rev/8d10fc6b4f6c, it is important to run 'mx eclipseinit' (or 'mx ideinit'). This is required so that changes made in Eclipse are deployed properly as the VM now only looks in /jre/lib/graal.jar for the Graal classes. This change was made to reduce the overhead caused by having numerous directories on the bootclasspath. -Doug From doug.simon at oracle.com Thu Mar 7 02:31:05 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Thu, 07 Mar 2013 10:31:05 +0000 Subject: hg: graal/graal: 230 new changesets Message-ID: <20130307104100.86F1D47DDC@hg.openjdk.java.net> Changeset: 983f7bdb85ff Author: Doug Simon Date: 2013-03-01 19:51 +1000 URL: http://hg.openjdk.java.net/graal/graal/rev/983f7bdb85ff removed redundant graal_ prefix from Graal specific functions and variable in native code ! 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: 06ecee106195 Author: Doug Simon Date: 2013-03-02 09:53 +0400 URL: http://hg.openjdk.java.net/graal/graal/rev/06ecee106195 added unit tests for bytecode and machine code disassembly ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/DisassemblerProvider.java + graal/com.oracle.graal.api.meta.test/src/com/oracle/graal/api/meta/test/TestBytecodeDisassemblerProvider.java ! graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/BytecodeDisassemblerProvider.java ! graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaMethod.java ! graal/com.oracle.graal.asm.test/src/com/oracle/graal/asm/test/AssemblerTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java Changeset: 0df252296c8d Author: Doug Simon Date: 2013-03-02 13:52 +0400 URL: http://hg.openjdk.java.net/graal/graal/rev/0df252296c8d added fsckproject command to mx for removing directories corresponding to deleted projects. This command is also called from the ideinit command (GRAAL-90) ! mxtool/mx.py Changeset: 3b5578749256 Author: Doug Simon Date: 2013-03-03 10:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3b5578749256 fixed API and test for ResolvedJavaMethod.getCode() ! graal/com.oracle.graal.api.meta.test/src/com/oracle/graal/api/meta/test/TestResolvedJavaMethod.java ! graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaMethod.java Changeset: 2fc832fbff8d Author: Gilles Duboscq Date: 2013-02-13 20:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2fc832fbff8d Add jdk1.8.0* to .hgignore ! .hgignore Changeset: 9bff64f43299 Author: Gilles Duboscq Date: 2013-03-04 09:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9bff64f43299 Better java version numbers support in mx ! mx/commands.py ! mxtool/mx.py Changeset: 1a83cef20ee5 Author: Gilles Duboscq Date: 2013-03-04 09:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1a83cef20ee5 Fix for the Graal CFG filter, be a bit more robust and accept graphs comming from the binary deserializer. Fixes GRAAL-127 Similarb change in the Graal edge color filter. Make it more robust. ! src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/GraalCFGFilter.java ! src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/GraalEdgeColorFilter.java Changeset: 0dea5ef60303 Author: Gilles Duboscq Date: 2013-03-04 10:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0dea5ef60303 Merge ! mxtool/mx.py Changeset: 0ae70d44ec9a Author: Roland Schatz Date: 2013-03-04 16:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0ae70d44ec9a Restructure Op2 in AMD64 backend. ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java Changeset: 2e3e4b691835 Author: Roland Schatz Date: 2013-03-04 16:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2e3e4b691835 Remove duplicate code in DivOp. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java Changeset: 1b591118d01e Author: Roland Schatz Date: 2013-03-04 17:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1b591118d01e Use AllocatableValue in DivRemOp. ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java Changeset: fb4d914f6bef Author: Roland Schatz Date: 2013-03-04 17:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fb4d914f6bef Fix wrong type in LMUL instruction. ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java Changeset: 17d0bdb44cb6 Author: Bernhard Urban Date: 2013-03-04 18:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/17d0bdb44cb6 IfNode: simplify expression in `simplify()' ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java Changeset: b6a87711eca0 Author: Doug Simon Date: 2013-03-05 13:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b6a87711eca0 replaced tabs with spaces ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/SimpleLanguage.atg Changeset: c7d7d9936809 Author: Doug Simon Date: 2013-03-05 15:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c7d7d9936809 use zipfile module instead of an external call to jar for creating jar files from projects ! mx/commands.py ! mxtool/mx.py Changeset: 9e3c0d8bca65 Author: Doug Simon Date: 2013-03-05 15:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9e3c0d8bca65 Merge. Changeset: 3362be58312a Author: Thomas Wuerthinger Date: 2013-03-05 11:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3362be58312a Move implicit null check emission to AMD64 specific code. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Changeset: 47a7e8d80536 Author: Thomas Wuerthinger Date: 2013-03-05 11:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/47a7e8d80536 Added new basic array PTX test. ! graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/BasicPTXTest.java Changeset: 9ac11c77d128 Author: Thomas Wuerthinger Date: 2013-03-05 11:49 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9ac11c77d128 Mark PTX parameters as non-null. ! graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/BasicPTXTest.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCompare.java Changeset: fe64b5da8229 Author: Thomas Wuerthinger Date: 2013-03-05 16:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fe64b5da8229 Create direct call for Static and Special to avoid out-of-line patching stub. ! 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/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! src/share/vm/graal/graalCodeInstaller.cpp Changeset: 57726bff1d9f Author: Thomas Wuerthinger Date: 2013-03-05 16:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/57726bff1d9f Merge. Changeset: d4e6c82cd6a1 Author: Thomas Wuerthinger Date: 2013-03-05 17:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d4e6c82cd6a1 Remove deferred write logic. ! src/share/vm/code/scopeDesc.cpp ! src/share/vm/code/scopeDesc.hpp Changeset: 85bd81dba8fc Author: Thomas Wuerthinger Date: 2013-03-05 17:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/85bd81dba8fc Remove more code related to deferred writes. ! src/share/vm/code/debugInfoRec.cpp ! src/share/vm/code/debugInfoRec.hpp ! src/share/vm/code/scopeDesc.cpp ! src/share/vm/code/scopeDesc.hpp ! src/share/vm/graal/graalCodeInstaller.cpp Changeset: 6b3c05de9521 Author: Thomas Wuerthinger Date: 2013-03-05 17:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6b3c05de9521 Fix array copy intrinsification test. ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/ArrayCopyIntrinsificationTest.java Changeset: 0799a7efbe7b Author: Thomas Wuerthinger Date: 2013-03-05 19:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0799a7efbe7b Clean up of usage of marks and code installation. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64IndirectCallOp.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/Marks.java ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCodeInstaller.hpp ! src/share/vm/graal/graalEnv.cpp ! src/share/vm/graal/graalEnv.hpp Changeset: c6c72de0537e Author: Thomas Wuerthinger Date: 2013-03-05 19:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c6c72de0537e Remove setDeoptInfo functionality. Start getting rid of scratch register usages. ! 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.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.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/AMD64HotSpotRegisterConfig.java ! 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/meta/HotSpotRuntime.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! src/cpu/x86/vm/graalRuntime_x86.cpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp Changeset: 29c2103630ef Author: Thomas Wuerthinger Date: 2013-03-05 19:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/29c2103630ef New strategy for inserting safepoints - always insert in loops but avoid in leaf methods. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoopSafepointInsertionPhase.java + graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/SafepointInsertionPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 24e93ac47e95 Author: Thomas Wuerthinger Date: 2013-03-05 19:47 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/24e93ac47e95 Allocate temporary register for safepoint operation instead of using scratch register. ! 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/AMD64SafepointOp.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: 921868af6d6b Author: Thomas Wuerthinger Date: 2013-03-05 20:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/921868af6d6b Remove stub declaration. ! src/share/vm/graal/graalRuntime.hpp Changeset: 30b3a966562e Author: Thomas Wuerthinger Date: 2013-03-05 21:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/30b3a966562e Remove debug stub. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.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/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: c2dbcc108063 Author: Thomas Wuerthinger Date: 2013-03-05 21:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c2dbcc108063 Removed unused imports. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java Changeset: 1c05f6f747d3 Author: Thomas Wuerthinger Date: 2013-03-05 21:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1c05f6f747d3 Remove access modifier restriction for allocatable values. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstructionClass.java Changeset: a413bcd552a4 Author: Thomas Wuerthinger Date: 2013-03-05 21:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a413bcd552a4 Relax safepoint polling assertion. ! src/cpu/x86/vm/nativeInst_x86.hpp Changeset: 20b605466ccb Author: katleman Date: 2013-01-31 17:04 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/20b605466ccb Added tag jdk8-b75 for changeset 6778d0b16593 ! .hgtags Changeset: da53cb17186a Author: katleman Date: 2013-02-07 12:32 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/da53cb17186a Added tag jdk8-b76 for changeset 20b605466ccb ! .hgtags Changeset: 6fbe8a57549d Author: amurillo Date: 2013-01-25 03:03 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/6fbe8a57549d 8006827: new hotspot build - hs25-b18 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 3c327c2b6782 Author: jmasa Date: 2013-01-03 15:03 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/3c327c2b6782 8004895: NPG: JMapPermCore test failure caused by warnings about missing field Reviewed-by: johnc ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/binaryTreeDictionary.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: ef1e11845e18 Author: jmasa Date: 2013-02-04 12:01 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/ef1e11845e18 Merge ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 5daaddd917a1 Author: coleenp Date: 2013-01-23 10:34 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/5daaddd917a1 8006040: NPG: on_stack processing wastes space in ConstantPool Summary: Added on_stack bit to flags. Also MetadataMarkOnStack is used for more than JVMTI so had to be moved. Reviewed-by: dholmes, stefank ! src/share/vm/classfile/classLoaderData.cpp + src/share/vm/classfile/metadataOnStackMark.cpp + src/share/vm/classfile/metadataOnStackMark.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp Changeset: 6cf2530f7fd3 Author: minqi Date: 2013-01-24 23:30 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/6cf2530f7fd3 8005278: Serviceability Agent: jmap -heap and jstack -m fail Summary: BinaryTreeDictionary is typedef'ed as AFLBinaryTreeDictionary in vmStructs and in SA we still use old name for that. FreeList now is a template based class which is not reflect in SA type library. When SA does calculation of heap for CMS, the former will cause failure to retrieve BinaryTreeDictionary sine the rename. The later will fail wherever it is used in SA. Reviewed-by: dholmes, sla, coleenp Contributed-by: yunda.mly at taobao.com + agent/src/share/classes/sun/jvm/hotspot/memory/AFLBinaryTreeDictionary.java - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java ! agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java ! agent/src/share/classes/sun/jvm/hotspot/memory/FreeList.java ! src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp Changeset: 8b46b0196eb0 Author: zgu Date: 2013-01-25 10:04 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/8b46b0196eb0 8000692: Remove old KERNEL code Summary: Removed depreciated kernel VM source code from hotspot VM Reviewed-by: dholmes, acorn ! make/Makefile ! make/bsd/makefiles/dtrace.make ! make/solaris/Makefile ! make/solaris/makefiles/dtrace.make - make/solaris/makefiles/kernel.make ! make/windows/build.bat ! make/windows/create_obj_files.sh ! make/windows/makefiles/defs.make ! make/windows/makefiles/projectcreator.make ! make/windows/makefiles/vm.make ! src/cpu/x86/vm/assembler_x86.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/prims/jniCheck.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiCodeBlobEvents.hpp ! src/share/vm/prims/jvmtiEnv.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiExtensions.hpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiImpl.hpp ! src/share/vm/prims/jvmtiRawMonitor.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiTagMap.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmStructs.hpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/services/attachListener.cpp ! src/share/vm/services/attachListener.hpp Changeset: edd76a5856f7 Author: sspitsyn Date: 2013-01-24 22:13 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/edd76a5856f7 8005128: JSR 292: the mlvm redefineClassInBootstrap test crashes in ConstantPool::compare_entry_to Summary: When constant pool is copied in merge_constant_pools the invokedynamic operands must be copied before. Reviewed-by: coleenp, twisti Contributed-by: serguei.spitsyn at oracle.com ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: 4a0dd3799a44 Author: minqi Date: 2013-01-25 04:23 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/4a0dd3799a44 Merge Changeset: 8d1fb417a42d Author: minqi Date: 2013-01-25 13:47 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/8d1fb417a42d Merge ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: cf8470eaf7e5 Author: acorn Date: 2013-01-27 21:58 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/cf8470eaf7e5 Merge - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - make/solaris/makefiles/kernel.make ! src/cpu/x86/vm/assembler_x86.hpp ! src/share/vm/classfile/vmSymbols.hpp Changeset: 16fb9f942703 Author: acorn Date: 2013-01-25 15:06 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/16fb9f942703 6479360: PrintClassHistogram improvements Summary: jcmd GC.class_stats (UnlockDiagnosticVMOptions) Reviewed-by: coleenp, hseigel, sla, acorn Contributed-by: ioi.lam at oracle.com ! src/share/vm/classfile/classLoaderData.cpp ! src/share/vm/classfile/classLoaderData.hpp ! src/share/vm/gc_implementation/shared/vmGCOperations.cpp ! src/share/vm/gc_implementation/shared/vmGCOperations.hpp ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/heapInspection.hpp ! src/share/vm/oops/annotations.cpp ! src/share/vm/oops/annotations.hpp ! src/share/vm/oops/arrayKlass.hpp ! src/share/vm/oops/constMethod.cpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticCommand.hpp Changeset: 0d26ce8e9251 Author: acorn Date: 2013-01-28 10:34 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/0d26ce8e9251 Merge - make/solaris/makefiles/kernel.make ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp Changeset: 815957d0203e Author: acorn Date: 2013-01-28 10:55 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/815957d0203e 8004967: Default method cause VerifyError: Illegal use of nonvirtual Summary: Recognize VM generated method in old verifier Reviewed-by: acorn, coleenp Contributed-by: bharadwaj.yadavelli at oracle.com ! make/bsd/makefiles/mapfile-vers-debug ! make/bsd/makefiles/mapfile-vers-product ! make/linux/makefiles/mapfile-vers-debug ! make/linux/makefiles/mapfile-vers-product ! make/solaris/makefiles/mapfile-vers ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvm.h Changeset: 7885e162c30f Author: acorn Date: 2013-01-28 09:33 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/7885e162c30f Merge Changeset: 9be6cde7919d Author: ctornqvi Date: 2013-01-25 10:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9be6cde7919d 8006413: Add utility classes for writing better multiprocess tests in jtreg Summary: Add a few utility classes to test/testlibrary to support multi process testing in jtreg tests. Added a test case for one of the utility classes. Also reviewed by Vitaly Davidovich Reviewed-by: brutisso, dholmes, vlivanov, nloodin, mgerdin + test/testlibrary/OutputAnalyzerTest.java + test/testlibrary/com/oracle/java/testlibrary/JDKToolFinder.java + test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java + test/testlibrary/com/oracle/java/testlibrary/OutputBuffer.java + test/testlibrary/com/oracle/java/testlibrary/ProcessTools.java + test/testlibrary/com/oracle/java/testlibrary/StreamPumper.java Changeset: baf7fac3167e Author: hseigel Date: 2013-02-01 14:14 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/baf7fac3167e 8006298: Specifying malformed JFR options (-XX:+FlightRecorderOptions) outputs non-sensical error Summary: Change error messages for malformed options so the messages are more useful. Reviewed-by: mikael, kvn, nloodin ! src/share/vm/runtime/arguments.cpp Changeset: 4c75576d18d0 Author: hseigel Date: 2013-02-01 13:30 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/4c75576d18d0 Merge Changeset: 9bf5f643d1cf Author: sspitsyn Date: 2013-01-31 20:07 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9bf5f643d1cf 8006542: JSR 292: the VM_RedefineClasses::append_entry() must support invokedynamic entry kinds Summary: Need a support for invokedynamic entry kinds when new and old constant pools are merged. Reviewed-by: coleenp, twisti Contributed-by: serguei.spitsyn at oracle.com ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp Changeset: dc31f560d6e7 Author: sspitsyn Date: 2013-01-31 20:09 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/dc31f560d6e7 8006546: JSR 292: typos in the ConstantPool::copy_cp_impl() Summary: Simple typos that need to be fixed Reviewed-by: coleenp, twisti Contributed-by: serguei.spitsyn at oracle.com ! src/share/vm/oops/constantPool.cpp Changeset: 79c1bb8fce5d Author: sspitsyn Date: 2013-01-31 20:11 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/79c1bb8fce5d 8006731: JSR 292: the VM_RedefineClasses::rewrite_cp_refs_in_method() must support invokedynamic Summary: The invokedynamic bytecode ref to a CP entry needs to be checked and fixed as well. Reviewed-by: coleenp, twisti Contributed-by: serguei.spitsyn at oracle.com ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: 9a9f870325cf Author: minqi Date: 2013-02-01 10:57 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9a9f870325cf Merge Changeset: b935589d2807 Author: minqi Date: 2013-02-01 14:42 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/b935589d2807 Merge Changeset: 44c5fcd9cb25 Author: iklam Date: 2013-01-24 10:57 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/44c5fcd9cb25 8006280: Need to reorder metadata structures to reduce size (64-bit) Summary: Reordered Klass, InstanceKlass and Method to save 8 bytes each Reviewed-by: coleenp, jiangli Contributed-by: ioi.lam at oracle.com ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/method.hpp Changeset: 1eae78177059 Author: jiangli Date: 2013-02-01 15:25 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/1eae78177059 Merge - make/solaris/makefiles/kernel.make ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/method.hpp Changeset: dc8ad3fd7050 Author: jiangli Date: 2013-02-01 19:36 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/dc8ad3fd7050 Merge Changeset: 4102b59539ce Author: ctornqvi Date: 2013-02-01 23:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4102b59539ce 8005012: Add WB APIs to better support NMT testing Summary: Add WB API functions to enable better NMT testing Reviewed-by: dholmes, zgu ! src/share/tools/whitebox/sun/hotspot/WhiteBox.java ! src/share/vm/memory/allocation.hpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/services/memBaseline.cpp ! src/share/vm/services/memPtr.cpp ! src/share/vm/services/memPtr.hpp ! src/share/vm/services/memRecorder.cpp ! src/share/vm/services/memRecorder.hpp ! src/share/vm/services/memTrackWorker.cpp ! src/share/vm/services/memTrackWorker.hpp ! src/share/vm/services/memTracker.cpp ! src/share/vm/services/memTracker.hpp Changeset: 4460acf8687b Author: ctornqvi Date: 2013-02-02 07:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4460acf8687b Merge Changeset: 9fe95b01ad32 Author: ctornqvi Date: 2013-02-02 08:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9fe95b01ad32 Merge Changeset: 43badbe2717a Author: minqi Date: 2013-01-31 17:43 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/43badbe2717a 8000973: SA on windows thread inspection is broken Summary: After bug 7161732, On Windows SA could not find correct address of thread_id of OSThread since _thread_id moved to end of the class . The presupposition of the address is following thread handle no longer stands. Fix by adding thread_id field to OSThread and getting the address directly from OSThread. Reviewed-by: nloodin, sspitsyn Contributed-by: yumin.qi at oracle.com ! agent/src/share/classes/sun/jvm/hotspot/debugger/windbg/amd64/WindbgAMD64Thread.java ! agent/src/share/classes/sun/jvm/hotspot/debugger/windbg/x86/WindbgX86Thread.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/win32_amd64/Win32AMD64JavaThreadPDAccess.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/win32_x86/Win32X86JavaThreadPDAccess.java Changeset: 65b632b77a97 Author: minqi Date: 2013-02-01 22:41 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/65b632b77a97 Merge Changeset: ff5401ad5635 Author: minqi Date: 2013-02-02 03:51 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/ff5401ad5635 Merge Changeset: 879c6de913d6 Author: ctornqvi Date: 2013-02-02 16:34 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/879c6de913d6 8005013: Add NMT tests Summary: Add tests for the Native Memory Tracking feature, includes regression tests for 8005936 and 8004802 Reviewed-by: zgu, coleenp ! test/TEST.ROOT + test/runtime/NMT/AllocTestType.java + test/runtime/NMT/BaselineWithParameter.java + test/runtime/NMT/CommandLineDetail.java + test/runtime/NMT/CommandLineEmptyArgument.java + test/runtime/NMT/CommandLineInvalidArgument.java + test/runtime/NMT/CommandLineSummary.java + test/runtime/NMT/CommandLineTurnOffNMT.java + test/runtime/NMT/JcmdScale.java + test/runtime/NMT/JcmdWithNMTDisabled.java + test/runtime/NMT/PrintNMTStatistics.java + test/runtime/NMT/PrintNMTStatisticsWithNMTDisabled.java + test/runtime/NMT/ShutdownTwice.java + test/runtime/NMT/SummaryAfterShutdown.java + test/runtime/NMT/SummarySanityCheck.java Changeset: a7f9a1195d86 Author: ctornqvi Date: 2013-02-02 20:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a7f9a1195d86 8000363: runtime/7158988/FieldMonitor.java fails with exception Summary: Removed unnecessary shell script in the test. Reviewed-by: coleenp, sla ! test/runtime/7158988/FieldMonitor.java - test/runtime/7158988/TestFieldMonitor.sh Changeset: 8f696cf1a0fb Author: dsamersoff Date: 2013-02-03 22:28 +0400 URL: http://hg.openjdk.java.net/graal/graal/rev/8f696cf1a0fb 8002048: Protocol to discovery of manageable Java processes on a network Summary: Introduce a protocol to discover manageble Java instances across a network subnet, JDP Reviewed-by: sla, dfuchs ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticCommand.hpp Changeset: c4ef3380a70b Author: hseigel Date: 2013-02-03 16:49 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/c4ef3380a70b 7197672: There are issues with shared data on windows Summary: On Windows, set rw protection on the CDS file just before removing it. Reviewed-by: dcubed, iklam ! src/share/vm/memory/filemap.cpp Changeset: ce5467120c84 Author: hseigel Date: 2013-02-03 17:12 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/ce5467120c84 Merge Changeset: 10d5f25a7c67 Author: hseigel Date: 2013-02-04 08:26 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/10d5f25a7c67 8000968: NPG: UseCompressedKlassPointers asserts with ObjectAlignmentInBytes for > 32G CompressedOops Summary: Pick a base that works for both CompressedOpps alignment and CompressedKlassPtrs alignment. Reviewed-by: kvn, roland ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/universe.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/runtime/arguments.cpp + test/runtime/8000968/Test8000968.sh Changeset: 24a91505f9d5 Author: emc Date: 2013-02-04 13:05 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/24a91505f9d5 8006949: Update hotspot for MethodParameters format change 8006907: Hotspot should reject classfiles with multiple MethodParameters attributes Summary: Update to Hotspot's processing of MethodParameters attributes in classfiles Reviewed-by: coleenp, jrose ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/prims/jvm.cpp Changeset: 42ea5e1fad75 Author: coleenp Date: 2013-02-04 13:51 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/42ea5e1fad75 Merge Changeset: ab826603e572 Author: simonis Date: 2013-02-04 13:14 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/ab826603e572 8007475: Memory stomp with UseMallocOnly Summary: Fix off-by-one error Reviewed-by: coleenp, hseigel ! src/share/vm/classfile/stackMapFrame.hpp + test/runtime/8007475/StackMapFrameTest.java Changeset: a401757763f9 Author: coleenp Date: 2013-02-04 22:59 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/a401757763f9 Merge Changeset: 12285410684f Author: dholmes Date: 2013-02-04 23:53 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/12285410684f 8006508: Wrong frame constructor is called in os_linux_x86.cpp Reviewed-by: dholmes, coleenp Contributed-by: Jeremy Manson ! src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/windows_x86/vm/os_windows_x86.cpp Changeset: f3ea1af9207a Author: dholmes Date: 2013-02-05 00:59 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/f3ea1af9207a Merge Changeset: 454d7cc622ab Author: dcubed Date: 2013-02-06 15:22 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/454d7cc622ab Merge - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - make/solaris/makefiles/kernel.make ! src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp - test/runtime/7158988/TestFieldMonitor.sh Changeset: fcc9e7681d63 Author: vlivanov Date: 2013-02-01 02:50 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/fcc9e7681d63 8006410: allocating without ResourceMark when CompileCommand was specified Reviewed-by: kvn, vlivanov Contributed-by: Igor Ignatyev ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethodData.cpp ! src/share/vm/oops/symbol.cpp Changeset: 60bba1398c51 Author: vlivanov Date: 2013-02-01 03:02 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/60bba1398c51 8005439: no message about inline method if it specifed by CompileCommand Reviewed-by: kvn, vlivanov Contributed-by: Igor Ignatyev ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/parse.hpp Changeset: e4bb0bda20a4 Author: morris Date: 2013-01-25 16:31 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/e4bb0bda20a4 8005811: Turn off TierdCompilation in JDK8 trunk for all platforms Summary: Disable tiered compilation in jdk8 because of CodeCache and performance anomalies Reviewed-by: kvn, twisti ! src/cpu/sparc/vm/c2_globals_sparc.hpp ! src/cpu/x86/vm/c2_globals_x86.hpp Changeset: 76341426b645 Author: drchase Date: 2013-01-25 16:09 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/76341426b645 8006500: compiler/8004741/Test8004741.java fails intermediately Summary: rewrote the test to be more reliable, add test for invalid size exception Reviewed-by: kvn ! test/compiler/8004741/Test8004741.java Changeset: 9fae07c31641 Author: morris Date: 2013-01-25 16:50 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9fae07c31641 6518907: cleanup IA64 specific code in Hotspot Summary: removed unused IA64 specific code Reviewed-by: twisti, kvn, dholmes ! agent/src/os/linux/LinuxDebuggerLocal.c ! agent/src/os/linux/libproc.h ! agent/src/os/win32/windbg/sawindbg.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/opto/generateOptoStub.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/vframeArray.cpp Changeset: 37c18711a0df Author: roland Date: 2013-02-04 09:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/37c18711a0df 8005114: VM is crashing in ciKlass*ciObjArrayKlass::element_klass() if metaspaces are full Summary: missing test for loaded klass in c1 Reviewed-by: kvn ! src/share/vm/c1/c1_Instruction.cpp Changeset: 39901f2f1abe Author: mikael Date: 2013-02-04 10:28 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/39901f2f1abe 8007403: Incorrect format arguments in adlparse.cpp Reviewed-by: kvn, twisti ! src/share/vm/adlc/adlparse.cpp Changeset: 8bd61471a109 Author: roland Date: 2013-02-04 11:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8bd61471a109 8007144: Incremental inlining mistakes some call sites for dead ones and doesn't inline them Summary: wrong detection for dead call sites. Reviewed-by: kvn ! src/share/vm/opto/callGenerator.cpp Changeset: 6a51fc70a15e Author: vlivanov Date: 2013-02-05 08:25 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/6a51fc70a15e 8006613: adding reason to made_not_compilable Reviewed-by: kvn, vlivanov Contributed-by: Igor Ignatyev ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethod.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/runtime/deoptimization.cpp Changeset: 4fcf990aa34a Author: drchase Date: 2013-02-06 11:33 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/4fcf990aa34a 8006807: C2 crash due to out of bounds array access in Parse::do_multianewarray Summary: check ndimensions before accessing length[i] element Reviewed-by: kvn Contributed-by: volker.simonis at gmail.com ! src/share/vm/opto/parse3.cpp Changeset: d05ff4bf41b3 Author: vlivanov Date: 2013-02-07 12:23 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/d05ff4bf41b3 Merge ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodData.hpp Changeset: db9981fd3124 Author: jprovino Date: 2013-01-23 13:02 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/db9981fd3124 8005915: Unify SERIALGC and INCLUDE_ALTERNATE_GCS Summary: Rename INCLUDE_ALTERNATE_GCS to INCLUDE_ALL_GCS and replace SERIALGC with INCLUDE_ALL_GCS. Reviewed-by: coleenp, stefank ! make/bsd/makefiles/minimal1.make ! make/excludeSrc.make ! make/linux/makefiles/minimal1.make ! src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp ! src/cpu/sparc/vm/c1_Runtime1_sparc.cpp ! src/cpu/sparc/vm/cppInterpreter_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.cpp ! src/cpu/sparc/vm/macroAssembler_sparc.hpp ! src/cpu/sparc/vm/templateInterpreter_sparc.cpp ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/cpu/x86/vm/cppInterpreter_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/cpu/zero/vm/assembler_zero.cpp ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/share/vm/c1/c1_CodeStubs.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/shared/allocationStats.cpp ! src/share/vm/gc_implementation/shared/allocationStats.hpp ! src/share/vm/gc_implementation/shared/concurrentGCThread.hpp ! src/share/vm/gc_implementation/shared/gSpaceCounters.cpp ! src/share/vm/gc_implementation/shared/gSpaceCounters.hpp ! src/share/vm/gc_implementation/shared/gcAdaptivePolicyCounters.hpp ! src/share/vm/gc_implementation/shared/hSpaceCounters.hpp ! src/share/vm/gc_implementation/shared/immutableSpace.cpp ! src/share/vm/gc_implementation/shared/isGCActiveMark.hpp ! src/share/vm/gc_implementation/shared/markSweep.inline.hpp ! src/share/vm/gc_implementation/shared/mutableNUMASpace.hpp ! src/share/vm/gc_implementation/shared/mutableSpace.cpp ! src/share/vm/gc_implementation/shared/spaceCounters.cpp ! src/share/vm/gc_implementation/shared/spaceCounters.hpp ! src/share/vm/gc_implementation/shared/vmGCOperations.cpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/memory/cardTableRS.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/memory/freeBlockDictionary.cpp ! src/share/vm/memory/freeList.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/generationSpec.cpp ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/heapInspection.hpp ! src/share/vm/memory/space.cpp ! src/share/vm/memory/space.hpp ! src/share/vm/memory/specialized_oop_closures.hpp ! src/share/vm/memory/tenuredGeneration.cpp ! src/share/vm/memory/tenuredGeneration.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/instanceClassLoaderKlass.cpp ! src/share/vm/oops/instanceClassLoaderKlass.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/instanceMirrorKlass.cpp ! src/share/vm/oops/instanceMirrorKlass.hpp ! src/share/vm/oops/instanceRefKlass.cpp ! src/share/vm/oops/instanceRefKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/klassPS.hpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/objArrayKlass.hpp ! src/share/vm/oops/objArrayKlass.inline.hpp ! src/share/vm/oops/oop.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/oops/oop.pcgc.inline.hpp ! src/share/vm/oops/oop.psgc.inline.hpp ! src/share/vm/oops/typeArrayKlass.cpp ! src/share/vm/precompiled/precompiled.hpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jvmtiEnvBase.hpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiExport.hpp ! src/share/vm/prims/jvmtiTagMap.cpp ! src/share/vm/prims/nativeLookup.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/fprofiler.hpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals_extension.hpp ! src/share/vm/runtime/init.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/services/attachListener.hpp ! src/share/vm/services/classLoadingService.cpp ! src/share/vm/services/classLoadingService.hpp ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticCommand.hpp ! src/share/vm/services/g1MemoryPool.hpp ! src/share/vm/services/heapDumper.cpp ! src/share/vm/services/management.cpp ! src/share/vm/services/memReporter.hpp ! src/share/vm/services/memoryPool.cpp ! src/share/vm/services/memoryPool.hpp ! src/share/vm/services/memoryService.cpp ! src/share/vm/services/psMemoryPool.hpp ! src/share/vm/services/runtimeService.cpp ! src/share/vm/utilities/macros.hpp ! src/share/vm/utilities/top.hpp ! src/share/vm/utilities/yieldingWorkgroup.cpp ! src/share/vm/utilities/yieldingWorkgroup.hpp Changeset: 8391fdd36e1f Author: dlong Date: 2013-01-27 01:07 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/8391fdd36e1f Merge ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.hpp ! src/share/vm/ci/ciReplay.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/services/heapDumper.cpp Changeset: 3c9bc17b9403 Author: bpittore Date: 2013-02-07 16:05 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/3c9bc17b9403 Merge ! src/share/vm/gc_implementation/shared/vmGCOperations.cpp ! src/share/vm/memory/binaryTreeDictionary.cpp ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/heapInspection.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/services/attachListener.hpp ! src/share/vm/services/diagnosticCommand.cpp ! src/share/vm/services/diagnosticCommand.hpp Changeset: df8462fbe585 Author: vladidan Date: 2013-02-07 20:40 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/df8462fbe585 Merge ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: ec0c4951286c Author: stefank Date: 2013-01-29 10:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ec0c4951286c 8004710: NPG: jmap could throw sun.jvm.hotspot.types.WrongTypeException after PermGen removal Summary: When calculating live object regions, make sure that the alignment reserve, at the end of a TLAB, is excluded. Reviewed-by: jmasa, brutisso ! agent/src/share/classes/sun/jvm/hotspot/oops/ObjectHeap.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/ThreadLocalAllocBuffer.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java ! src/share/vm/runtime/vmStructs.cpp Changeset: 4700e77d44c1 Author: johnc Date: 2013-02-01 13:17 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/4700e77d44c1 8006894: G1: Number of marking threads missing from PrintFlagsFinal output Summary: Set ConcGCThreads to the calculated number of marking threads. Reviewed-by: jmasa, ysr ! src/share/vm/gc_implementation/g1/concurrentMark.cpp Changeset: d9058e388631 Author: mikael Date: 2013-02-01 17:21 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/d9058e388631 8007257: NPG: metaspace.cpp: Incorrect arguments in calls to err_msg Summary: Fix size checks in assert and corrected some print formats. Also reviewed by vitalyd at gmail.com. Reviewed-by: coleenp, sspitsyn ! src/share/vm/memory/metaspace.cpp Changeset: 256d3f43c177 Author: johnc Date: 2013-01-31 10:45 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/256d3f43c177 8005875: G1: Kitchensink fails with ParallelGCThreads=0 Summary: Check that the concurrent marking worker gang exists in ConcurrentMark::print_worker_threads_on(). Changes were also reviewed by Vitaly Davidovich . Reviewed-by: brutisso ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp Changeset: 80518f4ecf32 Author: jmasa Date: 2013-02-04 12:51 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/80518f4ecf32 Merge ! src/share/vm/runtime/vmStructs.cpp Changeset: f2f0cf0f5444 Author: jmasa Date: 2013-02-04 13:26 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/f2f0cf0f5444 Merge Changeset: 06fd03af6ce4 Author: johnc Date: 2013-02-04 13:24 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/06fd03af6ce4 8001384: G1: assert(!is_null(v)) failed: narrow oop value can never be zero Summary: Flush any deferred card mark before a Java thread exits. Reviewed-by: brutisso, jmasa ! src/share/vm/runtime/thread.cpp Changeset: 84304a77c4e3 Author: johnc Date: 2013-02-04 19:40 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/84304a77c4e3 Merge Changeset: 95ccff9eee8e Author: jwilhelm Date: 2013-01-28 15:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/95ccff9eee8e 6348447: Specifying -XX:OldSize crashes 64-bit VMs Summary: Heap size will be set to allow for OldSize to fit. Also reviewed by vitalyd at gmail.com Reviewed-by: ehelin, jmasa ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp Changeset: f90b9bceb8e5 Author: johnc Date: 2013-02-05 09:13 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/f90b9bceb8e5 8005032: G1: Cleanup serial reference processing closures in concurrent marking Summary: Reuse the parallel reference processing oop closures during serial reference processing. Reviewed-by: brutisso ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp Changeset: 50d3b37d5bcd Author: johnc Date: 2013-02-05 22:24 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/50d3b37d5bcd Merge Changeset: 1135141fb97e Author: brutisso Date: 2013-02-08 10:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1135141fb97e Merge ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmStructs.cpp Changeset: 412d722168bc Author: amurillo Date: 2013-02-08 08:07 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/412d722168bc Merge - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - make/solaris/makefiles/kernel.make - test/runtime/7158988/TestFieldMonitor.sh Changeset: cdb46031e718 Author: amurillo Date: 2013-02-08 08:07 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/cdb46031e718 Added tag hs25-b18 for changeset 412d722168bc ! .hgtags Changeset: 1f84c84f8e1a Author: katleman Date: 2013-02-14 11:43 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/1f84c84f8e1a Added tag jdk8-b77 for changeset cdb46031e718 ! .hgtags Changeset: 1a0174612b49 Author: amurillo Date: 2013-02-08 08:16 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/1a0174612b49 8007801: new hotspot build - hs25-b19 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 8d9fc28831cc Author: dcubed Date: 2013-02-06 14:31 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/8d9fc28831cc 7182152: Instrumentation hot swap test incorrect monitor count Summary: Add/refine new tracing support using -XX:TraceRedefineClasses=16384. Reviewed-by: coleenp, acorn, sspitsyn ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/cpCache.hpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/klassVtable.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp ! src/share/vm/prims/jvmtiRedefineClassesTrace.hpp ! src/share/vm/utilities/accessFlags.cpp ! src/share/vm/utilities/accessFlags.hpp Changeset: 3a88007634b0 Author: ctornqvi Date: 2013-02-08 10:42 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3a88007634b0 8007434: Write tests for 8006298 Summary: Four tests written for 8006298 Reviewed-by: mgerdin, coleenp + test/runtime/CommandLine/BooleanFlagWithInvalidValue.java + test/runtime/CommandLine/FlagWithInvalidValue.java + test/runtime/CommandLine/NonBooleanFlagWithInvalidBooleanPrefix.java + test/runtime/CommandLine/UnrecognizedVMOption.java Changeset: 758935f7c23f Author: sla Date: 2013-02-08 12:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/758935f7c23f 8006423: SA: NullPointerException in sun.jvm.hotspot.debugger.bsd.BsdThread.getContext(BsdThread.java:67) Summary: Do not rely on mach thread port names to identify threads from SA Reviewed-by: dholmes, minqi, rbackman ! agent/src/os/bsd/MacosxDebuggerLocal.m ! agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdDebugger.java ! agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdDebuggerLocal.java ! agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThread.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_amd64/BsdAMD64JavaThreadPDAccess.java ! src/os/bsd/vm/osThread_bsd.hpp ! src/os/bsd/vm/os_bsd.cpp ! src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp Changeset: 7194f764221c Author: sla Date: 2013-02-08 14:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7194f764221c Merge Changeset: 461a3adac4d1 Author: sspitsyn Date: 2013-02-08 09:14 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/461a3adac4d1 Merge ! src/share/vm/oops/cpCache.cpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp Changeset: 8bf62bd86a4e Author: zgu Date: 2013-02-08 14:49 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/8bf62bd86a4e 8007791: More Restricted hs_err file permission Summary: Enforce more restricted hs_file permission Reviewed-by: acorn, dcubed, dsamersoff ! src/share/vm/utilities/vmError.cpp Changeset: 1ba5b18088a8 Author: zgu Date: 2013-02-08 14:32 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/1ba5b18088a8 Merge Changeset: 41d73c9b30a8 Author: zgu Date: 2013-02-08 16:31 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/41d73c9b30a8 8006691: Remove jvm_version_info.is_kernel_jvm field Summary: Removed is_kernel_jvm from jvm_version_info as Kernel VM has been deprecated Reviewed-by: mchung, coleenp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvm.h Changeset: 3f11b37f047c Author: zgu Date: 2013-02-08 13:55 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/3f11b37f047c Merge Changeset: f989aff6946f Author: zgu Date: 2013-02-08 16:56 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/f989aff6946f Merge Changeset: 927a311d00f9 Author: coleenp Date: 2013-02-11 14:06 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/927a311d00f9 8007320: NPG: move method annotations Summary: allocate method annotations and attach to ConstMethod if present Reviewed-by: dcubed, jiangli, sspitsyn, iklam ! agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/defaultMethods.cpp ! src/share/vm/memory/heapInspection.hpp ! src/share/vm/oops/annotations.cpp ! src/share/vm/oops/annotations.hpp ! src/share/vm/oops/constMethod.cpp ! src/share/vm/oops/constMethod.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp ! src/share/vm/runtime/fieldDescriptor.cpp ! src/share/vm/runtime/vmStructs.cpp + test/runtime/8007320/ConstMethodTest.java Changeset: 5ee2b330eacd Author: zgu Date: 2013-02-12 12:19 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/5ee2b330eacd 8007950: Undo hs_file permission change Summary: Reverse hs_err file permission back to 0666, as early push was premature Reviewed-by: dsamersoff, dcubed, acorn ! src/share/vm/utilities/vmError.cpp Changeset: deb43b8a436e Author: sspitsyn Date: 2013-02-13 08:42 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/deb43b8a436e Merge Changeset: bce1ac447f6b Author: johnc Date: 2013-02-06 14:50 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/bce1ac447f6b 7052429: G1: Avoid unnecessary scanning of humongous regions during concurrent marking Summary: Skip unnecessary scanning of bitmap for unmarked humongous objects/regions. Reviewed-by: jwilhelm, johnc Contributed-by: Tao Mao ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/runtime/globals.hpp Changeset: f64ffbf81af5 Author: jwilhelm Date: 2013-02-07 15:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f64ffbf81af5 8006432: Ratio flags should be unsigned Summary: Flags changed to be of uintx type Reviewed-by: johnc, tamao ! src/cpu/zero/vm/shark_globals_zero.hpp ! src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 5d8325eb8240 Author: brutisso Date: 2013-02-07 22:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5d8325eb8240 Merge ! src/share/vm/runtime/thread.cpp Changeset: 9425ba04792d Author: brutisso Date: 2013-02-07 18:40 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9425ba04792d Merge - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - make/solaris/makefiles/kernel.make ! src/share/vm/runtime/arguments.cpp - test/runtime/7158988/TestFieldMonitor.sh Changeset: ad747ee9d0b1 Author: brutisso Date: 2013-02-10 21:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ad747ee9d0b1 8002144: G1: large number of evacuation failures may lead to large c heap memory usage Summary: Use Stack<> instead of GrowableArray to keep track of preserved marks. Also reviewed by vitalyd at gmail.com. Reviewed-by: johnc, jcoomes ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Changeset: 5e401ef52ec0 Author: johnc Date: 2013-02-11 15:24 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/5e401ef52ec0 8007772: G1: assert(!hr->isHumongous() || mr.start() == hr->bottom()) failed: the start of HeapRegion and MemRegion should be consistent for humongous regions Summary: In do_marking_step(), we should always give up current region after scanning the object, if the region is humongous. Reviewed-by: brutisso, jwilhelm, tamao ! src/share/vm/gc_implementation/g1/concurrentMark.cpp Changeset: a83cd101fd62 Author: jmasa Date: 2013-01-23 19:08 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/a83cd101fd62 8005452: NPG: Create new flags for Metaspace resizing policy Reviewed-by: johnc, jwilhelm, coleenp, stefank ! src/share/vm/memory/metaspace.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: b8d5d7a6c94c Author: brutisso Date: 2013-02-14 11:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b8d5d7a6c94c Merge ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/thread.cpp Changeset: 91a23b11d8dc Author: kvn Date: 2013-02-08 15:07 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/91a23b11d8dc 8007708: compiler/6855215 assert(VM_Version::supports_sse4_2()) Summary: Added missing UseSSE42 check. Also added missing avx2 assert for vpermq instruction. Reviewed-by: roland, twisti ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp Changeset: 309460dcedf7 Author: morris Date: 2013-02-08 15:39 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/309460dcedf7 8006851: When TieredCompilation is set, max code cache should be bumped to 256mb Summary: Set ReservedCodeCacheSize to (default value)*5 when TieredCompilation is on. Reviewed-by: kvn, twisti ! src/share/vm/runtime/arguments.cpp Changeset: 2c673161698a Author: drchase Date: 2013-02-09 12:55 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/2c673161698a 8007402: Code cleanup to remove Parfait false positive Summary: add array access range check Reviewed-by: kvn ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/regmask.hpp Changeset: 64d2a0a39954 Author: kmo Date: 2013-02-10 22:35 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/64d2a0a39954 8006430: TraceTypeProfile is a product flag while it should be a diagnostic flag Summary: make sure all diagnostic and experimental flag kinds are checked in Flag::is_unlocked() Reviewed-by: kvn ! src/share/vm/runtime/globals.cpp Changeset: a9c29dfc7d73 Author: morris Date: 2013-02-11 10:38 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/a9c29dfc7d73 8003251: ARM: move MacroAssembler into separate file Summary: moved MacroAssembler into separate file Reviewed-by: twisti, kvn, dlong ! src/share/vm/asm/macroAssembler.hpp ! src/share/vm/asm/macroAssembler.inline.hpp Changeset: 1e5e28bac299 Author: morris Date: 2013-02-11 14:47 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/1e5e28bac299 8003252: PPC: move MacroAssembler into separate file Summary: moved MacroAssembler into separate file Reviewed-by: twisti, kvn, dlong ! src/share/vm/asm/macroAssembler.hpp ! src/share/vm/asm/macroAssembler.inline.hpp Changeset: 8b3da8d14c93 Author: roland Date: 2013-02-12 12:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8b3da8d14c93 7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob Summary: Add support for expensive nodes. Reviewed-by: kvn ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/opto/subnode.hpp Changeset: c703f9c4b025 Author: kmo Date: 2013-02-12 07:39 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/c703f9c4b025 8002169: TEST_BUG: compiler/7009359/Test7009359.java sometimes times out Summary: make the test less prone to timeout by reducing the amount of iteration and allowing main to be compiled Reviewed-by: jrose ! test/compiler/7009359/Test7009359.java Changeset: aaad39923cdb Author: kmo Date: 2013-02-12 14:33 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/aaad39923cdb Merge Changeset: 12e01444ca2d Author: iignatyev Date: 2013-02-13 08:29 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/12e01444ca2d 8006683: Add WhiteBox API to testing of compiler Reviewed-by: kvn, vlivanov ! src/share/tools/whitebox/sun/hotspot/WhiteBox.java ! src/share/vm/prims/wbtestmethods/parserTests.hpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/prims/whitebox.hpp + test/compiler/whitebox/CompilerWhiteBoxTest.java + test/compiler/whitebox/DeoptimizeAllTest.java + test/compiler/whitebox/DeoptimizeMethodTest.java + test/compiler/whitebox/IsMethodCompilableTest.java + test/compiler/whitebox/MakeMethodNotCompilableTest.java + test/compiler/whitebox/SetDontInlineMethodTest.java Changeset: 1cdf241a4b26 Author: vlivanov Date: 2013-02-14 05:36 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/1cdf241a4b26 Merge ! src/share/vm/runtime/arguments.cpp Changeset: 9f19f4a7d48a Author: amurillo Date: 2013-02-15 13:27 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9f19f4a7d48a Merge Changeset: d5e12e7d2f71 Author: amurillo Date: 2013-02-15 13:27 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/d5e12e7d2f71 Added tag hs25-b19 for changeset 9f19f4a7d48a ! .hgtags Changeset: db3359133cdd Author: katleman Date: 2013-02-21 11:12 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/db3359133cdd Added tag jdk8-b78 for changeset d5e12e7d2f71 ! .hgtags Changeset: 57b81d6c3641 Author: amurillo Date: 2013-02-15 13:36 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/57b81d6c3641 8008286: new hotspot build - hs25-b20 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 7adae9244bc8 Author: mgronlun Date: 2013-02-13 11:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7adae9244bc8 8007312: null check signal semaphore in os::signal_notify windows Reviewed-by: dholmes, sla ! src/os/windows/vm/os_windows.cpp Changeset: 2394a89e89f4 Author: rbackman Date: 2013-02-13 09:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2394a89e89f4 8008088: SA can hang the VM Reviewed-by: mgronlun, sla, dholmes ! agent/src/os/bsd/libproc_impl.c ! agent/src/os/bsd/libproc_impl.h ! agent/src/os/bsd/ps_proc.c ! agent/src/os/linux/libproc_impl.c ! agent/src/os/linux/libproc_impl.h ! agent/src/os/linux/ps_proc.c Changeset: 49618582fc5b Author: sla Date: 2013-02-14 13:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/49618582fc5b 8004840: Jstack seems to output unnecessary information in 7u9 Reviewed-by: dholmes, coleenp, sspitsyn, rbackman ! agent/src/share/classes/sun/jvm/hotspot/memory/CMSCollector.java ! agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java ! agent/src/share/classes/sun/jvm/hotspot/oops/MethodData.java ! agent/src/share/classes/sun/jvm/hotspot/oops/ObjectHeap.java Changeset: 3a531d40ad93 Author: acorn Date: 2013-02-14 14:33 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/3a531d40ad93 8007736: VerifyError for static method in interface Reviewed-by: dholmes, acorn Contributed-by: bharadwaj.yadavalli at oracle.com ! src/share/vm/classfile/verifier.cpp + test/runtime/8007736/TestStaticIF.java Changeset: e7e9e08147fc Author: mikael Date: 2013-02-14 12:36 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/e7e9e08147fc 8007639: Workaround for ccache in vm.make is incorrect Summary: Fixed makefile logic to correctly special case JRE_RELEASE_VERSION and vm_version.o Reviewed-by: dholmes, erikj ! make/bsd/makefiles/vm.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/vm.make Changeset: 5d5c577296fd Author: sla Date: 2013-02-15 08:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5d5c577296fd 8008102: SA on OS X does not stop the attached process Reviewed-by: dholmes, rbackman ! agent/src/os/bsd/MacosxDebuggerLocal.m Changeset: f35f1fbab3e1 Author: sla Date: 2013-02-15 10:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f35f1fbab3e1 Merge Changeset: dc1de5e78a85 Author: dsamersoff Date: 2013-02-15 10:29 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/dc1de5e78a85 Merge Changeset: f82bcc429e8c Author: sla Date: 2013-02-18 10:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f82bcc429e8c 8007901: SA: Don't read flag values as constants Reviewed-by: dholmes, mikael ! agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java ! src/share/vm/runtime/vmStructs.cpp Changeset: b5e3ec9c69fa Author: sla Date: 2013-02-18 12:49 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b5e3ec9c69fa 8007779: os::die() on solaris should generate core file Reviewed-by: dholmes, rbackman ! src/os/solaris/vm/os_solaris.cpp Changeset: 5cd2fac2ae70 Author: hseigel Date: 2013-02-19 08:51 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/5cd2fac2ae70 6749267: Signal handler should save/restore errno Summary: Save errno before processing signal, then restore it. Reviewed-by: acorn, sspitsyn ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp Changeset: 56c364daccc3 Author: emc Date: 2013-02-19 11:36 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/56c364daccc3 8007153: Ensure that MethodParameters API works properly with RedefineClasses Summary: Adds code to HotSpot to properly update MethodParameter attributes' constant pool indexes when redefineClasses is called Reviewed-by: coleenp, sspitsyn ! src/share/vm/oops/method.hpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: 1048edb5434a Author: coleenp Date: 2013-02-19 13:33 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/1048edb5434a Merge Changeset: 20fff74158eb Author: sspitsyn Date: 2013-02-20 08:51 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/20fff74158eb Merge Changeset: bbc7936779f9 Author: brutisso Date: 2013-02-14 09:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bbc7936779f9 8006398: Add regression tests for deprectated GCs Reviewed-by: ehelin, jwilhelm, jmasa ! test/TEST.ROOT + test/gc/startup_warnings/TestCMS.java + test/gc/startup_warnings/TestCMSIncrementalMode.java + test/gc/startup_warnings/TestCMSNoIncrementalMode.java + test/gc/startup_warnings/TestDefNewCMS.java + test/gc/startup_warnings/TestG1.java + test/gc/startup_warnings/TestIncGC.java + test/gc/startup_warnings/TestParNewCMS.java + test/gc/startup_warnings/TestParNewSerialOld.java + test/gc/startup_warnings/TestParallelGC.java + test/gc/startup_warnings/TestParallelScavengeSerialOld.java + test/gc/startup_warnings/TestSerialGC.java Changeset: fd7b3770c77e Author: tamao Date: 2013-02-14 14:43 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/fd7b3770c77e 8007764: Wrong initialized value of max_gc_pause_sec for an instance of class AdaptiveSizePolicy Summary: This is a fix of an initialization mistake for class AdaptiveSizePolicy. Reviewed-by: jmasa Contributed-by: Tao Mao ! src/share/vm/memory/collectorPolicy.cpp Changeset: ccc57295818b Author: johnc Date: 2013-02-19 16:22 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/ccc57295818b 8006628: NEED_TEST for JDK-8002870 Summary: Regression test for 8000311. Verifies that PLABStats works with zero parallel GC threads. Reviewed-by: jmasa, johnc Contributed-by: Filipp Zhinkin + test/gc/8000311/Test8000311.java Changeset: b9c5e46bf915 Author: johnc Date: 2013-02-20 12:52 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/b9c5e46bf915 8008188: Add regression test for 8005875 Summary: Add regression test for crash seen in 8005875. Test is run with G1 and PGCT=0 and issues "jcmd Thread.print" against itself. Without the fix for 8005875 the test will crash. Reviewed-by: brutisso + test/gc/TestG1ZeroPGCTJcmdThreadPrint.java Changeset: 5741d3fc502d Author: brutisso Date: 2013-02-21 13:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5741d3fc502d Merge Changeset: c59b7900a2bd Author: roland Date: 2013-02-18 09:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c59b7900a2bd 8007959: Use expensive node logic for more math nodes Summary: use expensive node logic for other more math nodes. Reviewed-by: kvn ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/subnode.hpp Changeset: 514efad5e81a Author: drchase Date: 2013-02-18 14:29 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/514efad5e81a 8008180: Several tests in compiler/5091921 need more time to run Summary: Added an explicit timeouts. Reviewed-by: kvn, twisti ! test/compiler/5091921/Test6850611.java ! test/compiler/5091921/Test6890943.java ! test/compiler/5091921/Test6905845.java ! test/compiler/5091921/Test6992759.java Changeset: a2bc322ca273 Author: drchase Date: 2013-02-18 15:08 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/a2bc322ca273 7102300: performance warnings cause results diff failure in Test6890943 Summary: Strip lines matching the performance warning from the output before diff. Reviewed-by: kvn ! test/compiler/5091921/Test6890943.sh Changeset: ad736b4683b4 Author: kvn Date: 2013-02-18 16:47 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/ad736b4683b4 8004867: VM crashing with assert "share/vm/opto/node.hpp:357 - assert(i < _max) failed: oob" Summary: Added few checks and early bailout from Superword optimization to avoid such cases in a future. Reviewed-by: roland, twisti ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/superword.hpp + test/compiler/8004867/TestIntAtomicCAS.java + test/compiler/8004867/TestIntAtomicOrdered.java + test/compiler/8004867/TestIntAtomicVolatile.java + test/compiler/8004867/TestIntUnsafeCAS.java + test/compiler/8004867/TestIntUnsafeOrdered.java + test/compiler/8004867/TestIntUnsafeVolatile.java Changeset: 2e4b16122164 Author: vlivanov Date: 2013-02-21 06:29 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/2e4b16122164 Merge Changeset: 579f6adb7f51 Author: jprovino Date: 2013-02-05 13:32 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/579f6adb7f51 8003539: Minimal VM don't react to -Dcom.sun.management and -XX:+ManagementServer Summary: A warning message should be displayed if these options are used with the Minimal VM. Reviewed-by: dholmes, dsamersoff ! src/share/vm/runtime/arguments.cpp Changeset: 9e2da96f9976 Author: bpittore Date: 2013-02-08 16:08 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/9e2da96f9976 Merge ! src/share/vm/runtime/arguments.cpp Changeset: 6c2da81297c5 Author: kvn Date: 2013-02-12 09:54 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/6c2da81297c5 Merge ! src/share/vm/runtime/arguments.cpp Changeset: 84a926fe53d0 Author: bpittore Date: 2013-01-24 13:27 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/84a926fe53d0 8005722: Assert in c1_LIR.hpp incorrect wrt to number of register operands Summary: In LIR_OpVisitState::visit() the receiver operand is processed twice Reviewed-by: roland, vladidan ! src/share/vm/c1/c1_LIR.cpp Changeset: cf9a2071eeac Author: jprovino Date: 2013-02-14 11:07 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/cf9a2071eeac 8006878: Some non-existent GC source files are in the minimalVM exclude list. Summary: cmsPermGen.cpp, psPermGen.cpp have been removed. yieldWorkingGroup.cpp typo is fixed. immutableSpace.cpp was in the list twice. Reviewed-by: dholmes, jmasa ! make/excludeSrc.make ! src/share/vm/utilities/yieldingWorkgroup.cpp Changeset: 1605eef8e11e Author: jprovino Date: 2013-02-14 11:08 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/1605eef8e11e 8003581: UseG1GC is not properly accounted for by INCLUDE_ALTERNATE_GCS Summary: Fix warning messages when selected garbage collectors are excluded from the minimal jvm. Reviewed-by: dholmes, cjplummer ! src/share/vm/runtime/arguments.cpp Changeset: 9c7d0948523f Author: jprovino Date: 2013-02-15 14:42 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/9c7d0948523f Merge Changeset: 1ba18258caa4 Author: bpittore Date: 2013-02-15 21:53 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/1ba18258caa4 Merge ! src/share/vm/runtime/arguments.cpp Changeset: abf488c22e09 Author: bpittore Date: 2013-02-20 23:29 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/abf488c22e09 Merge Changeset: 2af22eb04623 Author: vladidan Date: 2013-02-21 09:08 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/2af22eb04623 Merge Changeset: ed96c6015470 Author: vladidan Date: 2013-02-21 11:39 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/ed96c6015470 Merge Changeset: 555ec35a2507 Author: amurillo Date: 2013-02-22 10:02 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/555ec35a2507 Merge Changeset: 6691814929b6 Author: amurillo Date: 2013-02-22 10:02 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/6691814929b6 Added tag hs25-b20 for changeset 555ec35a2507 ! .hgtags Changeset: f1fb03a251e9 Author: poonam Date: 2013-02-21 23:58 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/f1fb03a251e9 8008546: Wrong G1ConfidencePercent results in GUARANTEE(VARIANCE() > -1.0) FAILED Reviewed-by: brutisso, johnc Contributed-by: vladimir.kempik at oracle.com ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp Changeset: fd32b88a87e9 Author: poonam Date: 2013-02-23 17:40 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/fd32b88a87e9 Merge Changeset: 5d395eb2626f Author: katleman Date: 2013-02-28 10:42 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/5d395eb2626f Added tag jdk8-b79 for changeset 6691814929b6 ! .hgtags Changeset: be1fbee20765 Author: amurillo Date: 2013-02-22 10:12 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/be1fbee20765 8008692: new hotspot build - hs25-b21 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 1b0dc9f87e75 Author: mgerdin Date: 2013-02-19 18:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1b0dc9f87e75 8006753: fix failed for JDK-8002415 White box testing API for HotSpot Summary: Modify WhiteBoxAPI to use interface classes from test/testlibrary instead, add ClassFileInstaller to resolve the boot class path issue Reviewed-by: ctornqvi, dsamersoff, coleenp, kvn ! make/Makefile ! make/bsd/makefiles/defs.make ! make/bsd/makefiles/vm.make - make/bsd/makefiles/wb.make ! make/linux/makefiles/defs.make ! make/linux/makefiles/vm.make - make/linux/makefiles/wb.make ! make/solaris/makefiles/defs.make ! make/solaris/makefiles/vm.make - make/solaris/makefiles/wb.make ! make/windows/makefiles/debug.make ! make/windows/makefiles/defs.make ! make/windows/makefiles/fastdebug.make ! make/windows/makefiles/product.make - make/windows/makefiles/wb.make - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java ! src/share/vm/runtime/arguments.cpp ! test/compiler/whitebox/DeoptimizeAllTest.java ! test/compiler/whitebox/DeoptimizeMethodTest.java ! test/compiler/whitebox/IsMethodCompilableTest.java ! test/compiler/whitebox/MakeMethodNotCompilableTest.java ! test/compiler/whitebox/SetDontInlineMethodTest.java ! test/runtime/NMT/AllocTestType.java ! test/runtime/NMT/PrintNMTStatistics.java ! test/runtime/NMT/SummarySanityCheck.java ! test/sanity/WBApi.java ! test/serviceability/ParserTest.java + test/testlibrary/ClassFileInstaller.java + test/testlibrary/whitebox/sun/hotspot/WhiteBox.java + test/testlibrary/whitebox/sun/hotspot/parser/DiagnosticCommand.java Changeset: 4c1d8002ffb1 Author: hseigel Date: 2013-02-20 07:16 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/4c1d8002ffb1 8004495: [parfait] False positive Buffer overflow in hotspot/src/os/linux/vm/os_linux.cpp Summary: Delete the questionable source code because it is for no-longer supported versions of Linux. Reviewed-by: mikael, coleenp ! src/os/linux/vm/os_linux.cpp Changeset: b861c8af2510 Author: hseigel Date: 2013-02-20 07:42 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/b861c8af2510 Merge - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java Changeset: b6d5b3e50379 Author: dcubed Date: 2013-02-20 19:36 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/b6d5b3e50379 6799919: Recursive calls to report_vm_out_of_memory are handled incorrectly Summary: report_vm_out_of_memory() should allow VMError.report_and_die() to handle multiple out of native memory errors. Reviewed-by: dcubed, dholmes, coleenp, acorn Contributed-by: ron.durbin at oracle.com ! src/share/vm/utilities/debug.cpp Changeset: fc64254f5579 Author: zgu Date: 2013-02-21 07:50 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/fc64254f5579 8008071: Crashed in promote_malloc_records() with Kitchensink after 19 days Summary: Added NULL pointer check for arena size record Reviewed-by: sspitsyn, dholmes ! src/share/vm/services/memSnapshot.cpp Changeset: 5ed317b25e23 Author: sla Date: 2013-02-22 10:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5ed317b25e23 7165259: Remove BugSpot Reviewed-by: coleenp, mgronlun ! agent/make/Makefile - agent/make/bugspot.bat ! agent/make/marks_notes.html ! agent/src/os/win32/windbg/sawindbg.cpp - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java ! agent/src/share/classes/sun/jvm/hotspot/tools/PMap.java ! agent/src/share/classes/sun/jvm/hotspot/tools/PStack.java ! agent/src/share/classes/sun/jvm/hotspot/tools/Tool.java ! agent/src/share/classes/sun/jvm/hotspot/ui/SAPanel.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/soql/sa.js - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp ! make/sa.files Changeset: f16e75e0cf11 Author: coleenp Date: 2013-02-22 08:36 -0500 URL: http://hg.openjdk.java.net/graal/graal/rev/f16e75e0cf11 8000797: NPG: is_pseudo_string_at() doesn't work Summary: Zero Symbol* for constant pool strings to indicate pseudo_strings (objects that aren't strings). Clean up JVM_CONSTANT_Object and unused flags. Reviewed-by: sspitsyn, jrose ! agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/ClassConstants.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/generateOopMap.cpp ! src/share/vm/utilities/constantTag.cpp ! src/share/vm/utilities/constantTag.hpp Changeset: 94478a033036 Author: sspitsyn Date: 2013-02-22 10:16 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/94478a033036 Merge - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java ! src/share/vm/runtime/arguments.cpp Changeset: ec2eddfed950 Author: rbackman Date: 2013-02-26 14:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ec2eddfed950 8008340: [sampling] assert(upper->pc_offset() >= pc_offset) failed: sanity Reviewed-by: kvn, sla ! src/cpu/sparc/vm/frame_sparc.cpp ! src/cpu/x86/vm/frame_x86.cpp Changeset: 77f9b6d0126e Author: sspitsyn Date: 2013-02-27 12:20 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/77f9b6d0126e Merge - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java Changeset: 0598674c0056 Author: jwilhelm Date: 2013-02-21 11:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0598674c0056 8008314: Unimplemented() Atomic::load breaks the applications Summary: jlong atomics isn't fully implemented om all 32-bit platforms so we try to avoid it. In this case the atomic add wasn't needed. Reviewed-by: dholmes, dlong ! src/share/vm/runtime/atomic.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/ostream.hpp Changeset: 96c885895d22 Author: johnc Date: 2013-02-22 11:01 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/96c885895d22 8007221: G1: concurrent phase durations do not state the time units ("secs") Summary: Add timer units to concurrent marking phases where the units were missing. Reviewed-by: jmasa, ysr ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp Changeset: 9a8ee5301f33 Author: brutisso Date: 2013-02-26 11:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9a8ee5301f33 Merge Changeset: 9289a00709b5 Author: poonam Date: 2013-02-26 08:58 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/9289a00709b5 Merge Changeset: b685ca4f4fb9 Author: ehelin Date: 2013-02-20 16:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b685ca4f4fb9 8008536: Add HotSpot support for printing class loader statistics for JMap Reviewed-by: sla, brutisso + agent/src/share/classes/sun/jvm/hotspot/tools/ClassLoaderStats.java ! agent/src/share/classes/sun/jvm/hotspot/tools/JMap.java - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java Changeset: 3d3379aab292 Author: ehelin Date: 2013-02-26 22:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3d3379aab292 Merge - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java Changeset: 9a094d29af19 Author: ehelin Date: 2013-02-06 07:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9a094d29af19 8004924: NPG: jmap -heap output should contain ClassMetaspaceSize value Reviewed-by: stefank, mgerdin ! agent/src/share/classes/sun/jvm/hotspot/tools/HeapSummary.java + test/gc/metaspace/ClassMetaspaceSizeInJmapHeap.java Changeset: b5e03c8ead49 Author: brutisso Date: 2013-02-28 09:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b5e03c8ead49 Merge - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java Changeset: 6931f425c517 Author: roland Date: 2013-02-25 14:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6931f425c517 8007294: ReduceFieldZeroing doesn't check for dependent load and can lead to incorrect execution Summary: InitializeNode::can_capture_store() must check that the captured store doesn't overwrite a memory location that is loaded before the store. Reviewed-by: kvn ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/phaseX.cpp + test/compiler/8007294/Test8007294.java Changeset: 706c919d3b56 Author: roland Date: 2013-02-26 12:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/706c919d3b56 8007722: C2: "assert(tp->base() != Type::AnyPtr) failed: not a bare pointer" at machnode.cpp:376 Summary: GetAndSetP's MachNode should capture bottom type. Reviewed-by: kvn ! src/share/vm/adlc/formssel.cpp + test/compiler/8007722/Test8007722.java Changeset: a00ed9736260 Author: drchase Date: 2013-02-26 15:38 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/a00ed9736260 8007776: Test6852078.java timeouts Summary: if more than 100 seconds and more than 100 iterations have both passed, then exit is allowed. Reviewed-by: kvn ! test/compiler/6852078/Test6852078.java Changeset: 133bf557ef77 Author: iignatyev Date: 2013-02-27 05:58 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/133bf557ef77 8007439: C2: adding successful message of inlining Reviewed-by: kvn, vlivanov ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/parse.hpp Changeset: b02157cd249f Author: vlivanov Date: 2013-02-27 08:03 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/b02157cd249f Merge Changeset: 338da89b2592 Author: vlivanov Date: 2013-02-28 15:31 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/338da89b2592 Merge Changeset: df5396524152 Author: amurillo Date: 2013-03-01 04:45 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/df5396524152 Merge - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java Changeset: 4a198b201f3c Author: amurillo Date: 2013-03-01 04:45 -0800 URL: http://hg.openjdk.java.net/graal/graal/rev/4a198b201f3c Added tag hs25-b21 for changeset df5396524152 ! .hgtags Changeset: 5fc51c1ecdeb Author: Thomas Wuerthinger Date: 2013-03-05 23:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5fc51c1ecdeb Merge. ! .hgtags - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp ! make/Makefile ! make/bsd/makefiles/vm.make - make/bsd/makefiles/wb.make ! make/hotspot_version ! make/linux/makefiles/vm.make - make/linux/makefiles/wb.make ! make/solaris/Makefile - make/solaris/makefiles/kernel.make ! make/solaris/makefiles/vm.make - make/solaris/makefiles/wb.make ! make/windows/makefiles/projectcreator.make ! make/windows/makefiles/vm.make - make/windows/makefiles/wb.make ! src/cpu/sparc/vm/c2_globals_sparc.hpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/cpu/x86/vm/c2_globals_x86.hpp ! src/cpu/x86/vm/frame_x86.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/windows_x86/vm/os_windows_x86.cpp - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/memory/allocation.hpp ! src/share/vm/oops/constantPool.cpp ! src/share/vm/oops/constantPool.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/oops/methodData.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/precompiled/precompiled.hpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiEnv.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/nativeLookup.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/globals_extension.hpp ! src/share/vm/runtime/init.cpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vframeArray.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/macros.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/top.hpp ! src/share/vm/utilities/vmError.cpp - test/runtime/7158988/TestFieldMonitor.sh Changeset: 0026a2e70695 Author: Thomas Wuerthinger Date: 2013-03-05 23:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0026a2e70695 Merge fixes. ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/oops/methodData.cpp ! src/share/vm/runtime/init.cpp Changeset: 22bbd34705ed Author: Roland Schatz Date: 2013-03-06 13:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/22bbd34705ed Unit tests for register allocator. + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/backend/AllocatorTest.java Changeset: 3d41998c30de Author: Thomas Wuerthinger Date: 2013-03-06 16:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3d41998c30de Create new way of handling unwind that recalculates rbp from rsp. Remove unused instanceof slow path stub. ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.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/AMD64HotSpotRegisterConfig.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/AMD64HotSpotUnwindOp.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.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: 2223b68006cd Author: Thomas Wuerthinger Date: 2013-03-06 16:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2223b68006cd Avoid saving rsp in rbp. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java Changeset: 0106de66dc51 Author: Thomas Wuerthinger Date: 2013-03-06 16:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0106de66dc51 Disable frame omission and enable allocation of rbp instead. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 25ec01061adf Author: Thomas Wuerthinger Date: 2013-03-06 16:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/25ec01061adf Merge. Changeset: 83ec1df0a30f Author: Doug Simon Date: 2013-03-06 16:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/83ec1df0a30f added support for distributions to mx added GRAAL distribution to create graal.jar in top level directory ! mx/projects ! mxtool/mx.py Changeset: 394f685c1502 Author: Doug Simon Date: 2013-03-06 18:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/394f685c1502 prepend -XX:GraalClassPath option if graal.jar exists (GRAAL-136) ! mx/commands.py Changeset: 396a059fdeed Author: Doug Simon Date: 2013-03-06 18:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/396a059fdeed Merge. Changeset: 6e3ebc6fd5a4 Author: Doug Simon Date: 2013-03-06 20:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6e3ebc6fd5a4 graal.jar is installed in all JDKs every time it is updated (GRAAL-136) ! mx/commands.py ! mxtool/mx.py Changeset: 8d10fc6b4f6c Author: Doug Simon Date: 2013-03-06 20:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8d10fc6b4f6c graal.jar is now the only way Graal is deployed in the VM (GRAAL-136) ! mx/commands.py ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/graal/graalGlobals.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp Changeset: c66aa27ef4da Author: Thomas Wuerthinger Date: 2013-03-06 21:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c66aa27ef4da Reenable patching of optimized and static calls but without out-of-line stubs. - 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/AMD64HotspotDirectStaticCallOp.java + graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotspotDirectVirtualCallOp.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/Marks.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstructionClass.java ! src/share/vm/code/compiledIC.cpp ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCodeInstaller.hpp Changeset: ae629e3671a0 Author: Thomas Wuerthinger Date: 2013-03-06 21:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ae629e3671a0 Merge. Changeset: 1446b04e4148 Author: Andreas Woess Date: 2013-03-06 23:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1446b04e4148 'mx fsckprojects' should only ask on a tty ! mxtool/mx.py Changeset: 27817b820c64 Author: Thomas Wuerthinger Date: 2013-03-07 10:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/27817b820c64 Disable rbp allocation for benchmarking purposes. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java Changeset: 42927585be33 Author: Thomas Wuerthinger Date: 2013-03-07 10:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/42927585be33 Reenable rbp allocation. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java From Vasanth.Venkatachalam at amd.com Thu Mar 7 08:58:41 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Thu, 7 Mar 2013 16:58:41 +0000 Subject: my steps to build graal in eclipse Message-ID: <5DD1503F815BD14889DC81D28643E3A7329FD71E@sausexdag06.amd.com> Hi, I am able to successfully build the Graal Java sources in Eclipse. Below are the steps I followed. There are slight differences from the wiki instructions at https://wikis.oracle.com/display/OpenJDK/Eclipse In the Eclipse import step, I actually did Import->Existing Projects Into Workspace instead of Import->Mercurial->Projects from Local Repository. Also I've indicated below which directory to select as the root directory for the import, and what projects appear in the Eclipse window when you select this. I think it would be useful to mention these details on the wiki. One of the steps that confused me was the one that said "Click the Browse... button to choose the $GRAAL directory". There are two graal/ directories, a top level one which contains agent/, hotspot, visualizer., etc. and a subfolder within it also called graal/, containing just the Graal api packages. I was initially unsure which of these should be the root directory for the import, but finally selected the latter one graal/graal/ and everything worked. Doug, I would be happy to update your wiki instructions with additional clarifying details based on my approach . I think this will be helpful for others. Let me know if I may go ahead and do so. Vasanth 1Create a folder "mygraal" and into it a do a fresh clone. This could be anywhere on your disk. At the end of the clone you should see the subdirectory mygraal/graal/ which contains the folders agent/, graal/, hotspot/ etc. 2) cd into mygraal/graal/ directory and run ./mx.sh ideinit. 3) Install Eclipse and edit eclipse.ini to specify the JVM version that Eclipse will be run with. 4) Start Eclipse and create an eclipse workspace in a directory of your choice. I did this in a different directory graalworkspace/.separate from the folder where I've checked out graal. 5) Install the Eclipse-CS, CDT and MercurialEclipse plugins if you have not done so. 5) In the Eclipse file menu, Import->Existing Projects Into Graal. Eclipse will ask to select the root directory of the projects to import. Select the directory, mygraal/graal/graal/. Note: this is the subfolder within the top level graal/ directory which contains only the Graal related APIs such as com.oracle.graal.alloc, com.oracle.graal.compiler.amd64, etc. After you have selected this as the root directory, in the eclipse window you should see all the folders within mygraal/graal/graal/ appear as separate projects. Deselect the com.oracle.truffle.* projects as they are not needed for the build, but make sure everything else is selected. Hit finish. 6) Eclipse will automatically build the Graal Java sources with no further configuration needed. From doug.simon at oracle.com Thu Mar 7 10:35:56 2013 From: doug.simon at oracle.com (Doug Simon @ Oracle) Date: Thu, 7 Mar 2013 19:35:56 +0100 Subject: my steps to build graal in eclipse In-Reply-To: <5DD1503F815BD14889DC81D28643E3A7329FD71E@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A7329FD71E@sausexdag06.amd.com> Message-ID: <5DB75ECE-F6ED-4202-B61E-D6FDDCA66B9C@oracle.com> Hi Vasanth, On Mar 7, 2013, at 5:58 PM, "Venkatachalam, Vasanth" wrote: > Hi, > > I am able to successfully build the Graal Java sources in Eclipse. Below are the steps I followed. > > There are slight differences from the wiki instructions at https://wikis.oracle.com/display/OpenJDK/Eclipse > > In the Eclipse import step, I actually did Import->Existing Projects Into Workspace instead of Import->Mercurial->Projects from Local Repository. Yes, that's a better alternative as it avoids a bug in the import functionality of MercurialEclipse where it doesn't recognize projects that have already been imported. At the same time, it still recognizes that the imported projects are in a Mercurial repository. > Also I?ve indicated below which directory to select as the root directory for the import, and what projects appear in the Eclipse window when you select this. > I think it would be useful to mention these details on the wiki. One of the steps that confused me was the one that said ?Click theBrowse... button to choose the $GRAAL directory?. The $GRAAL directory (as stated at the top of the wiki page) is the top level one. > There are two graal/ directories, a top level one which contains agent/, hotspot, visualizer., etc. and a subfolder within it also called graal/, containing just the Graal api packages. I was initially unsure which of these should be the root directory for the import, but finally selected the latter one graal/graal/ and everything worked. If you select the top level directory (i.e. $GRAAL), you'll also import the Eclipse projects configurations for the C++ code (i.e. $GRAAL/hotspot/.project) and those for the Python projects (i.e. mxtool/.project and mx/.project). Importing these is not necessary if you are not going to edit anything in these projects - the 'mx build' command builds the C++ sources anyway. > > Doug, I would be happy to update your wiki instructions with additional clarifying details based on my approach . I think this will be helpful for others. > Let me know if I may go ahead and do so. Fine by me. -Doug > 1Create a folder ?mygraal? and into it a do a fresh clone. This could be anywhere on your disk. > At the end of the clone you should see the subdirectory mygraal/graal/ which contains the folders agent/, graal/, hotspot/ etc. > > 2) cd into mygraal/graal/ directory and run ./mx.sh ideinit. > > 3) Install Eclipse and edit eclipse.ini to specify the JVM version that Eclipse will be run with. > > 4) Start Eclipse and create an eclipse workspace in a directory of your choice. I did this in a different directory graalworkspace/.separate from the folder where I?ve checked out graal. > > 5) Install the Eclipse-CS, CDT and MercurialEclipse plugins if you have not done so. > > 5) In the Eclipse file menu, Import->Existing Projects Into Graal. > Eclipse will ask to select the root directory of the projects to import. > Select the directory, mygraal/graal/graal/. Note: this is the subfolder within the top level graal/ directory which contains only the Graal related APIs such as com.oracle.graal.alloc, com.oracle.graal.compiler.amd64, etc. > After you have selected this as the root directory, in the eclipse window you should see all the folders within mygraal/graal/graal/ appear as separate projects. Deselect the com.oracle.truffle.* projects as they are not needed for the build, but make sure everything else is selected. Hit finish. > > 6) Eclipse will automatically build the Graal Java sources with no further configuration needed. > > From lukas.stadler at jku.at Fri Mar 8 05:54:06 2013 From: lukas.stadler at jku.at (Lukas Stadler) Date: Fri, 8 Mar 2013 14:54:06 +0100 Subject: Update Eclipse project configurations In-Reply-To: <162CE16C-82B5-4786-9FC6-13987D7960D4@oracle.com> References: <162CE16C-82B5-4786-9FC6-13987D7960D4@oracle.com> Message-ID: <7B5EEDF5-AE5B-4105-B2E9-4D81035CAB68@jku.at> I just pushed a small change to the gate that passes along JAVA_HOME from the "mx eclipseinit" to the jar builder. This should resolve the issue that prevented the jar build from working when eclipse was started without JAVA_HOME. (setting JAVA_HOME for GUI applications is tricky on MacOS?) - Lukas On Mar 7, 2013, at 11:34 AM, Doug Simon @ Oracle wrote: > After you have pulled http://hg.openjdk.java.net/graal/graal/rev/8d10fc6b4f6c, it is important to run 'mx eclipseinit' (or 'mx ideinit'). This is required so that changes made in Eclipse are deployed properly as the VM now only looks in /jre/lib/graal.jar for the Graal classes. This change was made to reduce the overhead caused by having numerous directories on the bootclasspath. > > -Doug From doug.simon at oracle.com Sat Mar 9 18:00:07 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Sun, 10 Mar 2013 02:00:07 +0000 Subject: hg: graal/graal: 43 new changesets Message-ID: <20130310020237.62A1748045@hg.openjdk.java.net> Changeset: 73536049fa29 Author: Roland Schatz Date: 2013-03-06 15:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/73536049fa29 Use int instead of Register for opcode extensions that are encoded in the ModR/M byte. ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java Changeset: d413770c6dd0 Author: Roland Schatz Date: 2013-03-07 09:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d413770c6dd0 Merge. - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DirectCallOp.java Changeset: 569b7d482918 Author: Roland Schatz Date: 2013-03-07 09:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/569b7d482918 Use MoveOp marker interface in AllocatorTest. ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/backend/AllocatorTest.java Changeset: a016a19f3792 Author: Roland Schatz Date: 2013-03-07 09:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a016a19f3792 Remove SpillMoveOp. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Changeset: 2dc0b0d71d8f Author: Roland Schatz Date: 2013-03-07 11:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2dc0b0d71d8f Change parameter order to be consistent with the rest of the backend. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java Changeset: 8692cdcc86bd Author: Roland Schatz Date: 2013-03-07 11:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8692cdcc86bd Merge. Changeset: 9786ac8fff61 Author: Gilles Duboscq Date: 2013-03-07 11:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9786ac8fff61 Use different vm args for SPECjbb2013 ! mx/commands.py ! mx/sanitycheck.py Changeset: 12b4f1521a0d Author: Thomas Wuerthinger Date: 2013-03-07 14:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/12b4f1521a0d Experiment with using probability information for finding split position. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScanWalker.java Changeset: 8fe43a4301dd Author: Thomas Wuerthinger Date: 2013-03-07 14:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8fe43a4301dd Merge. Changeset: b66f831ac5ab Author: Thomas Wuerthinger Date: 2013-03-07 15:17 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b66f831ac5ab Fix CFG printer output. Clean up after making the compiler class all-static. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot.server/src/com/oracle/graal/hotspot/server/CompilationServer.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinterObserver.java Changeset: b8f261ba79c6 Author: Thomas Wuerthinger Date: 2013-03-07 21:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b8f261ba79c6 Minimize diff to plain HotSpot version. ! src/cpu/sparc/vm/frame_sparc.inline.hpp ! src/cpu/sparc/vm/jniTypes_sparc.hpp ! src/cpu/x86/vm/frame_x86.cpp ! src/cpu/x86/vm/frame_x86.hpp ! src/cpu/x86/vm/frame_x86.inline.hpp ! src/cpu/x86/vm/jniTypes_x86.hpp ! src/cpu/x86/vm/nativeInst_x86.hpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/os/bsd/vm/os_bsd.cpp ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/windows_x86/vm/os_windows_x86.cpp ! src/os_cpu/windows_x86/vm/threadLS_windows_x86.cpp ! src/share/vm/c1/c1_IR.hpp ! src/share/vm/ci/ciCallProfile.hpp ! src/share/vm/ci/ciField.hpp ! src/share/vm/ci/ciObject.hpp ! src/share/vm/ci/ciSymbol.hpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/classLoader.hpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/compiledIC.cpp ! src/share/vm/code/debugInfo.cpp ! src/share/vm/code/debugInfo.hpp ! src/share/vm/code/debugInfoRec.cpp ! src/share/vm/code/debugInfoRec.hpp ! src/share/vm/code/icBuffer.cpp ! src/share/vm/code/icBuffer.hpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/code/pcDesc.hpp ! src/share/vm/code/stubs.cpp ! src/share/vm/code/stubs.hpp ! src/share/vm/compiler/oopMap.hpp ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCompiler.cpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/interpreter/interpreter.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/interpreter/templateInterpreter.cpp ! src/share/vm/memory/allocation.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/method.cpp ! src/share/vm/oops/method.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/basicLock.hpp ! src/share/vm/runtime/compilationPolicy.cpp ! src/share/vm/runtime/compilationPolicy.hpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/fieldDescriptor.hpp ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/frame.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/init.cpp ! src/share/vm/runtime/javaCalls.cpp ! src/share/vm/runtime/javaCalls.hpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/reflectionUtils.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/stackValue.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vframe.cpp ! src/share/vm/runtime/vframeArray.cpp ! src/share/vm/runtime/vframe_hp.cpp ! src/share/vm/runtime/vframe_hp.hpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/debug.hpp - src/share/vm/utilities/machineCodePrinter.cpp - src/share/vm/utilities/machineCodePrinter.hpp ! src/share/vm/utilities/macros.hpp ! src/share/vm/utilities/ostream.cpp ! src/share/vm/utilities/top.hpp ! src/share/vm/utilities/vmError.cpp Changeset: 2bc6f232f74e Author: Thomas Wuerthinger Date: 2013-03-07 21:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2bc6f232f74e More fixes in the C++ part. ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp Changeset: 466de7e331ef Author: Thomas Wuerthinger Date: 2013-03-07 21:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/466de7e331ef Fix Graal compiler test base class. ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java Changeset: a2a67458a7b6 Author: Thomas Wuerthinger Date: 2013-03-07 21:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a2a67458a7b6 Fix issue that caused IC stub to be uncleared for C1/C2. ! src/share/vm/code/compiledIC.cpp Changeset: 3c29f7da5c66 Author: Thomas Wuerthinger Date: 2013-03-07 21:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3c29f7da5c66 More C++ fixes. Revert alignment change of _number_of_committed_segments. ! src/share/vm/code/compiledIC.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/memory/heap.cpp Changeset: 5977a55503e9 Author: Thomas Wuerthinger Date: 2013-03-07 22:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5977a55503e9 Fix product build. ! src/share/vm/runtime/java.cpp Changeset: 2156359ee519 Author: Thomas Wuerthinger Date: 2013-03-07 22:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2156359ee519 Fix JavaCallArguments initialization. ! src/share/vm/runtime/javaCalls.hpp Changeset: 53bc01380011 Author: Thomas Wuerthinger Date: 2013-03-07 23:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/53bc01380011 Fix client build. ! src/share/vm/c1/c1_IR.hpp Changeset: c5ff08c22458 Author: Thomas Wuerthinger Date: 2013-03-08 00:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c5ff08c22458 Fix regression in client compiler debug recording. ! src/share/vm/c1/c1_IR.hpp ! src/share/vm/code/debugInfo.hpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp Changeset: a357b7a3de5e Author: Thomas Wuerthinger Date: 2013-03-08 00:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a357b7a3de5e Fix imports. ! src/share/vm/code/nmethod.cpp Changeset: 191883d1c563 Author: Thomas Wuerthinger Date: 2013-03-08 11:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/191883d1c563 Undo experiment with using probabilities for split positions. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScanWalker.java Changeset: da10229e5a33 Author: Thomas Wuerthinger Date: 2013-03-08 11:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/da10229e5a33 Experiment with new LSRA block order. ! graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Changeset: d9d06daac640 Author: Roland Schatz Date: 2013-03-07 15:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d9d06daac640 Change source comment to match refactored method signature. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java Changeset: 25fd899b979f Author: Roland Schatz Date: 2013-03-07 15:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/25fd899b979f Move reusable parts of LIRInstructionClass into base class. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstructionClass.java + graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java Changeset: a85ef330ffe7 Author: Roland Schatz Date: 2013-03-07 15:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a85ef330ffe7 Composite value. + graal/com.oracle.graal.lir/src/com/oracle/graal/lir/CompositeValue.java + graal/com.oracle.graal.lir/src/com/oracle/graal/lir/CompositeValueClass.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstruction.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java Changeset: d2733c9b3d0e Author: Roland Schatz Date: 2013-03-07 15:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d2733c9b3d0e Convert AMD64Address to CompositeValue. ! graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64.java ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java + graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64AddressValue.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java Changeset: 7f57c30575c8 Author: Roland Schatz Date: 2013-03-07 16:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7f57c30575c8 Make AMD64Address a low-level representation for use by the assembler only. ! graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64.java - graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64Address.java + graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/AbstractAddress.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java + graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Address.java ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64MacroAssembler.java ! graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.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/AMD64SafepointOp.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64AddressValue.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64BitManipulationOp.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Compare.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64ControlFlow.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64TestOp.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 58b1820ff19a Author: Roland Schatz Date: 2013-03-07 16:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/58b1820ff19a Convert PTXAddress to CompositeValue. + graal/com.oracle.graal.asm.ptx/src/com/oracle/graal/asm/ptx/PTXAddress.java ! graal/com.oracle.graal.asm.ptx/src/com/oracle/graal/asm/ptx/PTXAssembler.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java + graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXAddressValue.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXBitManipulationOp.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXMove.java - graal/com.oracle.graal.ptx/src/com/oracle/graal/ptx/PTXAddress.java Changeset: 0fdbde04cca3 Author: Roland Schatz Date: 2013-03-07 16:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0fdbde04cca3 Remove unused Address class. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/AbstractAddress.java - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/ValueUtil.java ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Address.java ! graal/com.oracle.graal.asm.ptx/src/com/oracle/graal/asm/ptx/PTXAddress.java ! graal/com.oracle.graal.asm.sparc/src/com/oracle/graal/asm/sparc/SPARCAssembler.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/Interval.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRInstruction.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 537f03d2bdf7 Author: Roland Schatz Date: 2013-03-07 16:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/537f03d2bdf7 Removed unused parameter from AbstractAssembler.makeAddress(). ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java ! graal/com.oracle.graal.asm.ptx/src/com/oracle/graal/asm/ptx/PTXAssembler.java ! graal/com.oracle.graal.asm.sparc/src/com/oracle/graal/asm/sparc/SPARCAssembler.java ! graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 2ba078b2d311 Author: Roland Schatz Date: 2013-03-07 17:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2ba078b2d311 Merge. Changeset: 5c9fc4f75b4c Author: Roland Schatz Date: 2013-03-07 18:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5c9fc4f75b4c Remove unused project dependency. ! mx/projects Changeset: 6d23f64f2fdb Author: Roland Schatz Date: 2013-03-08 13:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6d23f64f2fdb Merge. - src/share/vm/utilities/machineCodePrinter.cpp - src/share/vm/utilities/machineCodePrinter.hpp Changeset: 67d654d9ee9a Author: Lukas Stadler Date: 2013-03-08 14:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/67d654d9ee9a pass JAVA_HOME to eclipse builder ! mxtool/mx.py Changeset: 11298242e782 Author: Doug Simon Date: 2013-03-07 11:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/11298242e782 removed use of NonConstantParameterError (GRAAL-147) ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationVerificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java Changeset: 2cd58a5c8791 Author: Doug Simon Date: 2013-03-07 11:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2cd58a5c8791 Merge. Changeset: c78d5f33efaa Author: Doug Simon Date: 2013-03-07 20:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c78d5f33efaa fixed debug scope for test compilations so that -G:+PrintCFG works again ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java Changeset: 67ee3325c285 Author: Doug Simon Date: 2013-03-08 13:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/67ee3325c285 added support for node lowering to set the fixed node for the next node to be lowered ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LoweringTool.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java Changeset: 80a825206cbc Author: Doug Simon Date: 2013-03-08 14:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/80a825206cbc replaced AMD64Arithmetic.ConvertSlowPath with a snippet (GRAAL-140) ! 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/snippets/AMD64ConvertSnippets.java + graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/bytecode/BC_d2l03.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConvertNode.java Changeset: 0934903d28f3 Author: Doug Simon Date: 2013-03-08 15:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0934903d28f3 use shutil.move to make concurrent updating/replacement of graal.jar atomic ! mx/commands.py ! mxtool/mx.py Changeset: 989e0582a30f Author: Doug Simon Date: 2013-03-08 15:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/989e0582a30f enabled Eclipse builders to use console logging ! mxtool/mx.py Changeset: e0db99483b35 Author: Doug Simon Date: 2013-03-08 15:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e0db99483b35 Merge. - graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64Address.java - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java - graal/com.oracle.graal.ptx/src/com/oracle/graal/ptx/PTXAddress.java ! mx/commands.py ! mxtool/mx.py - src/share/vm/utilities/machineCodePrinter.cpp - src/share/vm/utilities/machineCodePrinter.hpp Changeset: 4b11a0983557 Author: Doug Simon Date: 2013-03-08 16:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4b11a0983557 fixed issue with deleting temp files on Windows ! mx/commands.py ! mxtool/mx.py From doug.simon at oracle.com Tue Mar 12 09:01:08 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Tue, 12 Mar 2013 16:01:08 +0000 Subject: hg: graal/graal: 41 new changesets Message-ID: <20130312160410.9F9B0480AB@hg.openjdk.java.net> Changeset: d982f1469cba Author: Thomas Wuerthinger Date: 2013-03-10 19:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d982f1469cba Fix bit scan assembler instructions. ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java Changeset: 3bbdf34536bc Author: Thomas Wuerthinger Date: 2013-03-10 19:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3bbdf34536bc Merge. - graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64Address.java - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java - graal/com.oracle.graal.ptx/src/com/oracle/graal/ptx/PTXAddress.java Changeset: bf1c9ae73775 Author: Thomas Wuerthinger Date: 2013-03-10 23:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bf1c9ae73775 Schedule predecessors before merges. ! graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java Changeset: 317b004fc741 Author: Thomas Wuerthinger Date: 2013-03-10 23:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/317b004fc741 Use sum of unscheduled blocks at merge point. ! graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Changeset: a848153df742 Author: Thomas Wuerthinger Date: 2013-03-10 23:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a848153df742 Fix check for unscheduled blocks. ! graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Changeset: 3c74a32bb262 Author: Doug Simon Date: 2013-03-11 11:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3c74a32bb262 generated NetBeans projects will also update graal.jar ! mxtool/mx.py Changeset: 87cb93643a47 Author: Roland Schatz Date: 2013-03-11 10:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/87cb93643a47 Move platform specific assumptions from AllocatorTest to a separate project. + graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64AllocatorTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/backend/AllocatorTest.java ! mx/projects Changeset: 0e583eb213f1 Author: Roland Schatz Date: 2013-03-11 10:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0e583eb213f1 Check that OperandFlags is consistent with declared type of operand field. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java Changeset: b1d5f203c57d Author: Roland Schatz Date: 2013-03-11 11:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b1d5f203c57d Allow STACK argument in conversion ops. ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Arithmetic.java Changeset: 44f79360793e Author: Roland Schatz Date: 2013-03-11 11:10 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/44f79360793e Fix wrong prefix in bit operations. ! graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java Changeset: 75e8020ed0f5 Author: Roland Schatz Date: 2013-03-11 12:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/75e8020ed0f5 Merge. Changeset: 5619aa66aec1 Author: Doug Simon Date: 2013-03-11 14:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5619aa66aec1 added probabilities to Convert snippets ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/snippets/AMD64ConvertSnippets.java Changeset: 60a90f433459 Author: Doug Simon Date: 2013-03-11 14:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/60a90f433459 alignment bug fix (contributed by Mick Jordan) ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java Changeset: 4f81da21fa06 Author: Doug Simon Date: 2013-03-11 14:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4f81da21fa06 made SafepointNode extensible (temp. solution until SafepointNodes are lowered via snippets) ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java Changeset: f54b2344ef3c Author: Doug Simon Date: 2013-03-11 15:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f54b2344ef3c workaround for UnsafeCastNode.tryInferStamp when the stamp is StampFactory.forNodeIntrinsic (contributed by Mick Jordan) ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java Changeset: a68310b2b8b8 Author: Doug Simon Date: 2013-03-11 15:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a68310b2b8b8 made GraphBuilderPhase and SnippetInstaller more extensible (inspired by patch from Mick Jordan) ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderConfiguration.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java Changeset: 4508b693afa6 Author: Doug Simon Date: 2013-03-11 15:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4508b693afa6 Merge. Changeset: 931bbe0bec93 Author: Thomas Wuerthinger Date: 2013-03-11 11:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/931bbe0bec93 Remove stubs as a parameter to TargetMethodAssembler. ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXBackend.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 4ba3455566e0 Author: Thomas Wuerthinger Date: 2013-03-11 17:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4ba3455566e0 Small style fix. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/SafepointInsertionPhase.java Changeset: 1c82ddf25b20 Author: Thomas Wuerthinger Date: 2013-03-11 17:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1c82ddf25b20 Merge. Changeset: be49c1cab1d1 Author: Thomas Wuerthinger Date: 2013-03-11 17:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/be49c1cab1d1 Style fixes. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/SafepointInsertionPhase.java Changeset: 9efef773f521 Author: Thomas Wuerthinger Date: 2013-03-11 17:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9efef773f521 Fix import. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 22429580c7a8 Author: Gilles Duboscq Date: 2013-03-07 14:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/22429580c7a8 sanitychecks.py: Collapse valueMaps in test for the case where multiple matcher return matches ! mx/sanitycheck.py Changeset: ed880b9992b4 Author: Gilles Duboscq Date: 2013-03-07 14:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ed880b9992b4 Add GuardLoweringPhase which transforms floating guards into fixed if+deopt Minor cleanup in SchedulePhase ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java + graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: 0339d17fa950 Author: Gilles Duboscq Date: 2013-03-08 12:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0339d17fa950 Implement PTXLIRGenerator.emitDeoptimize in a similar way to the guard implementation for PTX: just return ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java Changeset: 5ceaf43459b5 Author: Gilles Duboscq Date: 2013-03-11 13:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5ceaf43459b5 Use a DeoptimizeOp to avoid spilling before the deoptimize runtime call ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java + graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.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 Changeset: c64ecb1ef1a9 Author: Gilles Duboscq Date: 2013-03-11 18:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c64ecb1ef1a9 Create LIRGenerator.emitOverflowCheckBranch in preparation for emitDeoptimizeOnOverflow removal ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Changeset: 74896b25297a Author: Gilles Duboscq Date: 2013-03-11 19:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/74896b25297a Test canonicalization and checkstyle early in gate process Run the unittests in hosted mode (server) ! mx/commands.py Changeset: ed3fa3ae7b61 Author: Doug Simon Date: 2013-03-11 18:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ed3fa3ae7b61 applied patch to Makefile system for building graal.jar (CR-102) ! make/Makefile ! make/bsd/makefiles/buildtree.make + make/build-graal.xml ! make/defs.make ! make/linux/makefiles/buildtree.make ! make/solaris/makefiles/buildtree.make Changeset: 3ebe0b86736e Author: Doug Simon Date: 2013-03-11 18:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3ebe0b86736e simplified addition of graal.jar to the bootclasspath (CR-102) ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/os.cpp Changeset: aadd8f02449a Author: Doug Simon Date: 2013-03-11 20:10 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/aadd8f02449a Merge. Changeset: b89a97928e72 Author: Thomas Wuerthinger Date: 2013-03-11 20:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b89a97928e72 Implement weak reference semantics for HotSpotInstalledCode in the default method installation case. Add new boolean[] array as parameter to the code installation. ! 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/HotSpotInstalledCode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCodeInstaller.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalEnv.cpp ! src/share/vm/graal/graalEnv.hpp ! src/share/vm/graal/graalJavaAccess.hpp Changeset: 169ec449974a Author: Thomas Wuerthinger Date: 2013-03-11 20:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/169ec449974a Merge. Changeset: dce9cefed571 Author: Thomas Wuerthinger Date: 2013-03-11 23:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/dce9cefed571 Draft speculation log. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/DebugInfo.java + graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/SpeculationLog.java ! graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaMethod.java ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/BasicPTXTest.java ! 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/backend/AllocatorTest.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.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/AMD64HotSpotBackend.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.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/HotSpotResolvedJavaMethod.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIR.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRFrameState.java Changeset: b45ed2b14fd1 Author: Thomas Wuerthinger Date: 2013-03-11 23:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b45ed2b14fd1 Fix warning. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/DebugInfo.java Changeset: 3e8d66931c80 Author: Roland Schatz Date: 2013-03-12 10:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3e8d66931c80 Fix PrintCFG in AllocatorTest. ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/backend/AllocatorTest.java Changeset: 2c5df42999dd Author: Roland Schatz Date: 2013-03-12 10:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2c5df42999dd Fix hinting in register allocator. ! graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64AllocatorTest.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java Changeset: 3866e39b88b5 Author: Gilles Duboscq Date: 2013-03-12 14:34 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3866e39b88b5 Add loop exits to Deopt branches during Guard lowering ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 7a81fbcd67bb Author: Roland Schatz Date: 2013-03-12 14:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7a81fbcd67bb Debug option to reduce available registers. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: b9eb0d939e60 Author: Roland Schatz Date: 2013-03-12 15:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b9eb0d939e60 Add bootstrap with register pressure to gate tests. ! mx/commands.py Changeset: df68f316a4c8 Author: Roland Schatz Date: 2013-03-12 15:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/df68f316a4c8 Merge. From doug.simon at oracle.com Wed Mar 13 00:12:38 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Wed, 13 Mar 2013 07:12:38 +0000 Subject: hg: graal/graal: 7 new changesets Message-ID: <20130313071307.33CDC480DA@hg.openjdk.java.net> Changeset: ae54ef386838 Author: Doug Simon Date: 2013-03-12 14:40 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ae54ef386838 removed unused field ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotUnwindOp.java Changeset: 60b6dd6a58b7 Author: Doug Simon Date: 2013-03-12 14:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/60b6dd6a58b7 fixed warning about includeantruntime property not being set see: http://stackoverflow.com/questions/5103384/ant-warning-includeantruntime-was-not-set ! make/build-graal.xml Changeset: ce91d45f0b1b Author: Doug Simon Date: 2013-03-12 16:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ce91d45f0b1b uses static import to reduce noise ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 44b20ca21ae1 Author: Doug Simon Date: 2013-03-12 17:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/44b20ca21ae1 reverted code-under-test to original scope prior to making JTT tests subclass JTTTest ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Except_Synchronized05.java Changeset: 3d33975f6497 Author: Doug Simon Date: 2013-03-12 17:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3d33975f6497 move test for null exception object passed to unwind operation from stub code to extra HIR ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java ! src/cpu/x86/vm/graalRuntime_x86.cpp Changeset: d5239d9bbfac Author: Doug Simon Date: 2013-03-12 17:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d5239d9bbfac Merge. Changeset: 9560289a2b3e Author: Doug Simon Date: 2013-03-13 07:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9560289a2b3e more extensibility changes for GraphBuilderPhase ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java From christian.humer at gmail.com Wed Mar 13 14:16:36 2013 From: christian.humer at gmail.com (Christian Humer) Date: Wed, 13 Mar 2013 22:16:36 +0100 Subject: Incompatible API changes in Truffle Source-Code-Generation Message-ID: Hi folks, Please note that in my recent push to Truffle-Source-Code-Generation I have introduced incompatible API changes. These changes will arrive in the next few days in the openjdk repository. Three annotations @SpecializationThrows, @SpecializationGuard and @GuardCheck were removed from the API. As replacement for @SpecializationThrows you can use @Specialization(rewriteOn=Exception.class). And for @SpecializationGuard you can use @Specialization(guards="guardMethodName") instead. You should delete all occurences of @GuardCheck, they are not required anymore. - Christian Humer From doug.simon at oracle.com Wed Mar 13 14:48:01 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Wed, 13 Mar 2013 21:48:01 +0000 Subject: hg: graal/graal: 30 new changesets Message-ID: <20130313214934.B36A548105@hg.openjdk.java.net> Changeset: ab374f69e4e8 Author: Gilles Duboscq Date: 2013-03-13 17:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ab374f69e4e8 JTTTest gets the expeted result only once ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/JTTTest.java Changeset: 9484e7602276 Author: Gilles Duboscq Date: 2013-03-13 17:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9484e7602276 GraalCompilerTest should assert that parameters passed to executeActual have the right type. ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/JTTTest.java Changeset: 0e008317f8ed Author: Gilles Duboscq Date: 2013-03-13 18:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0e008317f8ed Binary dumper should try numbering output files if a file with the same name exists ! graal/com.oracle.graal.printer/src/com/oracle/graal/printer/GraphPrinterDumpHandler.java Changeset: f58cfb2d004f Author: Peter B. Kessler Date: 2013-03-12 16:27 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/f58cfb2d004f Fix typo in an assert. ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLTypes.java Changeset: 35267b295f74 Author: Peter B. Kessler Date: 2013-03-13 11:00 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/35267b295f74 Merge Changeset: 6b74ffe38183 Author: Christian Humer Date: 2013-03-01 17:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6b74ffe38183 Implemented support for executing nodes in @Children fields. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Utils.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/MethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ShortCircuitData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ActualParameter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MethodSpec.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCastParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCheckParser.java Changeset: 0b48dc5f37c3 Author: Christian Humer Date: 2013-03-01 17:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0b48dc5f37c3 Added truffle.api.codegen.test project with a BultinFunctionTest. + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/BuiltinFunctionTest.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/SimpleTypes.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/package-info.java ! mx/projects Changeset: 8fa2eed07f81 Author: Christian Humer Date: 2013-03-01 17:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8fa2eed07f81 Merge. - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java Changeset: 33e08aca06ff Author: Christian Humer Date: 2013-03-01 18:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/33e08aca06ff Codegen API change. Simplified definition of guards. - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/GuardCheck.java ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/Specialization.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationGuard.java ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/TypeSystem.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/GuardParser.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/ArithmeticNode.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/LessThanNode.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/TypedNode.java Changeset: 91982900acee Author: Christian Humer Date: 2013-03-04 15:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/91982900acee Added truffle.api dependency to truffle.codegen.api. ! mx/projects Changeset: ac4e8c16ffdf Author: Christian Humer Date: 2013-03-04 15:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ac4e8c16ffdf Added new codegen api classes NodeId, NodeClass to codegen along with some refactorings. + graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/NodeClass.java + graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/NodeId.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java + graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationListenerData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationListenerParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java Changeset: d81ff782fa1a Author: Christian Humer Date: 2013-03-04 17:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d81ff782fa1a Removed @SpecializationThrows from codegen API. Replaced it by a simplier version in @Specialization. ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/Specialization.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationThrows.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationThrowsData.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/ArithmeticNode.java Changeset: 10d37f893471 Author: Christian Humer Date: 2013-03-06 18:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/10d37f893471 Fixed import generation. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/codewriter/AbstractCodeWriter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/codewriter/OrganizedImports.java Changeset: 703c09f8640c Author: Christian Humer Date: 2013-03-06 18:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/703c09f8640c Implemented support for @NodeClass annotation to support builtins. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/SimpleTypes.java ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/package-info.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Utils.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ExecutableTypeMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/GenericParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/MethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ShortCircuitParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationListenerParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ActualParameter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MethodSpec.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/GuardData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/GuardParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCastParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCheckParser.java Changeset: 3862508afe2f Author: Christian Humer Date: 2013-03-06 18:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3862508afe2f Updated @NodeClass tests. + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/BinaryOperationTest.java - graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/BuiltinFunctionTest.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeString.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/ValueNode.java Changeset: 5b08b0f4d338 Author: Christian Humer Date: 2013-03-06 18:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5b08b0f4d338 Updated some Truffle-SL classes to new naming convention. ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/ArithmeticNode.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/WriteLocalNode.java Changeset: c4c3f50fa9c2 Author: Christian Humer Date: 2013-03-12 11:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c4c3f50fa9c2 Fixes for codegen builtins support. ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/GeneratedBy.java ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/NodeFactory.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Utils.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeExecutableElement.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeTreeBuilder.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/compiler/AbstractCompiler.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ext/ExtensionParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ShortCircuitParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ActualParameter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ClassElementFactory.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/Template.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemParser.java Changeset: aad7e9f4f71c Author: Christian Humer Date: 2013-03-12 11:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/aad7e9f4f71c A few additions to codegen tests. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/BinaryOperationTest.java - graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeString.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeStringTest.java - graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/SimpleTypes.java + graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/TypeSystemTest.java - graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/ValueNode.java ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/package-info.java Changeset: edc414f52e2b Author: Christian Humer Date: 2013-03-12 11:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/edc414f52e2b Merge. - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp - graal/com.oracle.graal.amd64/src/com/oracle/graal/amd64/AMD64Address.java - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DirectCallOp.java - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoopSafepointInsertionPhase.java - graal/com.oracle.graal.ptx/src/com/oracle/graal/ptx/PTXAddress.java - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/kernel.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make ! mx/projects - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java - src/share/vm/utilities/machineCodePrinter.cpp - src/share/vm/utilities/machineCodePrinter.hpp - test/runtime/7158988/TestFieldMonitor.sh Changeset: cb70ed101b5f Author: Christian Humer Date: 2013-03-13 11:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/cb70ed101b5f Added automatic generation of generic specialization which throws unsupported operation if reached. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeStringTest.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Utils.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/GenericParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java Changeset: 0905d796944a Author: Christian Humer Date: 2013-03-13 19:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0905d796944a Refactored codegen error model to make error redirection a lot easier. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/AbstractParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/Log.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/TruffleProcessor.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/TruffleTypes.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ext/ExtensionParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ExecutableTypeMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/GenericParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ShortCircuitParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationGuardData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationThrowsData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/Template.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCastParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeCheckParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemParser.java Changeset: 4c0d72c98797 Author: Christian Humer Date: 2013-03-13 19:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4c0d72c98797 Codegen API naming cleanup. ! graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/NodeFactory.java Changeset: ac2204c05a02 Author: Christian Humer Date: 2013-03-13 20:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ac2204c05a02 UseSpecializations is now turned off for the generic specialization in WriteLocalNode. ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/NodeFactory.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/ArithmeticNode.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/WriteLocalNode.java Changeset: 1384c39e2c53 Author: Christian Humer Date: 2013-03-13 20:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1384c39e2c53 Added missing class MessageContainer. + graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MessageContainer.java Changeset: 4dc7034317ec Author: Christian Humer Date: 2013-03-13 20:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4dc7034317ec Cleanup. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/GenericParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MessageContainer.java Changeset: 141af6b3b72b Author: Christian Humer Date: 2013-03-13 20:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/141af6b3b72b Cleanup. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeStringTest.java Changeset: d02ba214b7e6 Author: Christian Humer Date: 2013-03-13 20:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d02ba214b7e6 Merge. Changeset: 65f03d5f98a1 Author: Christian Humer Date: 2013-03-13 20:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/65f03d5f98a1 Cleanup project dependencies. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/package-info.java ! mx/projects Changeset: b81f42160093 Author: Christian Humer Date: 2013-03-13 21:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b81f42160093 Fix use specializations in generic until further fixes are done. ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/WriteLocalNode.java Changeset: 2237260c6fdb Author: Doug Simon Date: 2013-03-13 21:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2237260c6fdb the contents of jvm.cfg are reset when copying the JDK so that the non-default VMs must be built before being run ! mx/commands.py From Vasanth.Venkatachalam at amd.com Wed Mar 13 18:07:39 2013 From: Vasanth.Venkatachalam at amd.com (Venkatachalam, Vasanth) Date: Thu, 14 Mar 2013 01:07:39 +0000 Subject: x86 registers passed to other ISA target assemblers Message-ID: <5DD1503F815BD14889DC81D28643E3A732A0ED93@sausexdag06.amd.com> Hi, I noticed that when running BasicPTXTest.java, the PTX assembler is getting passed AMD64 Registers. This became apparent when I hacked the assembler routines to print the names of the Register parameters passed. After single stepping through the code to understand how AMD64 registers are coming into the picture, I found a routine AMD64HotspotGraalRuntime.makeInstance(), which is instantiating a new new AMD64HotspotGraalRuntime(). It looks like this routine is getting called by graalVMToCompiler.cpp in the below lines: Handle VMToCompiler::graalRuntime() { if (JNIHandles::resolve(_graalRuntimePermObject) == NULL) { #ifdef AMD64 Symbol* name = vmSymbols::com_oracle_graal_hotspot_amd64_AMD64HotSpotGraalRuntime(); #endif KlassHandle klass = loadClass(name); JavaValue result(T_OBJECT); JavaCalls::call_static(&result, klass, vmSymbols::makeInstance_name(), vmSymbols::getInstance_signature(), Thread::current()); >From the above code, it looks like the VM is defaulting to use the AMD64 runtime in cases where you are running on an AMD64 platform, even if we are running a test case for one of the other ISAs (BasicPTXTest) that simply prints out the code that is generated (without executing the code). Am I correct in thinking this is why AMD64 registers are getting passed into the PTX Assembler? Vasanth From thomas.wuerthinger at oracle.com Thu Mar 14 06:18:05 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Thu, 14 Mar 2013 14:18:05 +0100 Subject: x86 registers passed to other ISA target assemblers In-Reply-To: <5DD1503F815BD14889DC81D28643E3A732A0ED93@sausexdag06.amd.com> References: <5DD1503F815BD14889DC81D28643E3A732A0ED93@sausexdag06.amd.com> Message-ID: Vasanth, At the moment the register configuration is retrieved from the runtime in "Backend.newFrameMap". You could override this method in PTXBackend to pass in a different register configuration. We are currently in the process of restructuring the backend to fit the needs of PTX. I'll keep you updated - you can expect a new version by the end of next week. The runtime is a singleton and represents the "host runtime" - i.e., it corresponds to the platform HotSpot itself is compiled with. This means you can still produce PTX code with PTX registers while the host runtime is AMD64. - thomas On Mar 14, 2013, at 2:07 AM, "Venkatachalam, Vasanth" wrote: > Hi, > > I noticed that when running BasicPTXTest.java, the PTX assembler is getting passed AMD64 Registers. This became apparent when I hacked the assembler routines to print the names of the Register parameters passed. > > After single stepping through the code to understand how AMD64 registers are coming into the picture, I found a routine AMD64HotspotGraalRuntime.makeInstance(), which is instantiating a new > new AMD64HotspotGraalRuntime(). It looks like this routine is getting called by graalVMToCompiler.cpp in the below lines: > > Handle VMToCompiler::graalRuntime() { > if (JNIHandles::resolve(_graalRuntimePermObject) == NULL) { > #ifdef AMD64 > Symbol* name = vmSymbols::com_oracle_graal_hotspot_amd64_AMD64HotSpotGraalRuntime(); > #endif > KlassHandle klass = loadClass(name); > > JavaValue result(T_OBJECT); > JavaCalls::call_static(&result, klass, vmSymbols::makeInstance_name(), vmSymbols::getInstance_signature(), Thread::current()); > >> From the above code, it looks like the VM is defaulting to use the AMD64 runtime in cases where you are running on an AMD64 platform, even if we are running a test case for one of the other ISAs (BasicPTXTest) that simply prints out the code that is generated (without executing the code). > Am I correct in thinking this is why AMD64 registers are getting passed into the PTX Assembler? > > > Vasanth From christian.thalinger at oracle.com Fri Mar 15 18:23:46 2013 From: christian.thalinger at oracle.com (Christian Thalinger) Date: Fri, 15 Mar 2013 18:23:46 -0700 Subject: x86 registers passed to other ISA target assemblers In-Reply-To: References: <5DD1503F815BD14889DC81D28643E3A732A0ED93@sausexdag06.amd.com> Message-ID: <2F9AC672-3D68-4B1A-AE1A-F051B119B048@oracle.com> On Mar 14, 2013, at 6:18 AM, Thomas Wuerthinger wrote: > Vasanth, > > At the moment the register configuration is retrieved from the runtime in "Backend.newFrameMap". You could override this method in PTXBackend to pass in a different register configuration. We are currently in the process of restructuring the backend to fit the needs of PTX. I'll keep you updated - you can expect a new version by the end of next week. > > The runtime is a singleton and represents the "host runtime" - i.e., it corresponds to the platform HotSpot itself is compiled with. This means you can still produce PTX code with PTX registers while the host runtime is AMD64. Right. I pointed that out some time ago (on this list?). As long as you don't execute PTX or HSAIL code (and I guess you don't, yet) it doesn't matter what register allocation you have. Thomas will make it work for us :-) -- Chris > > - thomas > > On Mar 14, 2013, at 2:07 AM, "Venkatachalam, Vasanth" wrote: > >> Hi, >> >> I noticed that when running BasicPTXTest.java, the PTX assembler is getting passed AMD64 Registers. This became apparent when I hacked the assembler routines to print the names of the Register parameters passed. >> >> After single stepping through the code to understand how AMD64 registers are coming into the picture, I found a routine AMD64HotspotGraalRuntime.makeInstance(), which is instantiating a new >> new AMD64HotspotGraalRuntime(). It looks like this routine is getting called by graalVMToCompiler.cpp in the below lines: >> >> Handle VMToCompiler::graalRuntime() { >> if (JNIHandles::resolve(_graalRuntimePermObject) == NULL) { >> #ifdef AMD64 >> Symbol* name = vmSymbols::com_oracle_graal_hotspot_amd64_AMD64HotSpotGraalRuntime(); >> #endif >> KlassHandle klass = loadClass(name); >> >> JavaValue result(T_OBJECT); >> JavaCalls::call_static(&result, klass, vmSymbols::makeInstance_name(), vmSymbols::getInstance_signature(), Thread::current()); >> >>> From the above code, it looks like the VM is defaulting to use the AMD64 runtime in cases where you are running on an AMD64 platform, even if we are running a test case for one of the other ISAs (BasicPTXTest) that simply prints out the code that is generated (without executing the code). >> Am I correct in thinking this is why AMD64 registers are getting passed into the PTX Assembler? >> >> >> Vasanth > From doug.simon at oracle.com Sat Mar 16 19:00:11 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Sun, 17 Mar 2013 02:00:11 +0000 Subject: hg: graal/graal: 60 new changesets Message-ID: <20130317020314.55D7B481E3@hg.openjdk.java.net> Changeset: 0ac3e388445f Author: Peter B. Kessler Date: 2013-03-13 14:06 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/0ac3e388445f Fix typo in JavaDoc. ! graal/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/ReturnTypeSpecializationTest.java Changeset: 5bed444f0f5c Author: Peter B. Kessler Date: 2013-03-13 14:07 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/5bed444f0f5c Merge. Changeset: 9d2e83b4ebbf Author: Peter B. Kessler Date: 2013-03-13 14:55 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/9d2e83b4ebbf Merge. Changeset: ded5288f5b96 Author: Andreas Woess Date: 2013-03-13 21:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ded5288f5b96 fix windows build of the server and client vms ! make/windows/makefiles/projectcreator.make ! src/cpu/x86/vm/macroAssembler_x86.cpp Changeset: 482037339440 Author: Andreas Woess Date: 2013-03-13 23:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/482037339440 ProjectCreator: compare relative path against flavour. Fixes random build failures when the repository path contains "graal". ! src/share/tools/ProjectCreator/FileTreeCreatorVC10.java Changeset: e4019a78c938 Author: Andreas Woess Date: 2013-03-13 23:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e4019a78c938 update authors file ! GRAAL_AUTHORS Changeset: 1d40b7e8823b Author: Andreas Woess Date: 2013-03-13 23:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1d40b7e8823b Merge Changeset: 985a97ba083c Author: Thomas Wuerthinger Date: 2013-03-12 11:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/985a97ba083c Fix spacing. ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_idea.java ! src/share/vm/code/nmethod.cpp ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 1112adb28f82 Author: Thomas Wuerthinger Date: 2013-03-12 11:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1112adb28f82 Merge. Changeset: f5e26f69f164 Author: Thomas Wuerthinger Date: 2013-03-13 17:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f5e26f69f164 Create option for convert deoptimize to guard phase. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 0db1cb049a78 Author: Thomas Wuerthinger Date: 2013-03-13 17:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0db1cb049a78 Remove usage of negate() in word type rewriter phase. ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: 53683dc2815e Author: Thomas Wuerthinger Date: 2013-03-14 01:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/53683dc2815e Fix and enable deopt to guard conversion. ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/CFGVerifier.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfDynamicNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: ff91c7101ed0 Author: Thomas Wuerthinger Date: 2013-03-14 01:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ff91c7101ed0 Merge. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/GuardCheck.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationGuard.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationThrows.java Changeset: db00ce461a51 Author: Thomas Wuerthinger Date: 2013-03-14 01:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/db00ce461a51 Fix import. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: 0269ef50021f Author: Thomas Wuerthinger Date: 2013-03-14 12:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0269ef50021f Fix convert deoptimize to guard phase. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: 97ee911c4c74 Author: Christian Humer Date: 2013-03-14 13:10 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/97ee911c4c74 Fixed behaviour of useSpecializations for Generic specializations. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/WriteLocalNode.java Changeset: a219e2a5a92f Author: Christian Humer Date: 2013-03-14 13:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a219e2a5a92f Fixed element ordering of methods which were inconsistent from javac to ecj. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java Changeset: cc83fc474fd5 Author: Christian Humer Date: 2013-03-14 13:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/cc83fc474fd5 Fixed unsupported generic generation which could also take void as a type. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java Changeset: 2ddf84436009 Author: Christian Humer Date: 2013-03-14 13:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2ddf84436009 Merge. Changeset: 8fde1be81b2d Author: Doug Simon Date: 2013-03-14 14:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8fde1be81b2d LIRGenerator is transmitted across backend passes instead of just the LIR so that backend-specific, per-compilation information can be attached to the backend-specific LIRGenerator object ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXBackend.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/target/Backend.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotBackend.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/asm/TargetMethodAssembler.java Changeset: 59744882ddeb Author: Doug Simon Date: 2013-03-14 14:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/59744882ddeb moved logic for reserving a special area/slot in a frame (e.g., for use during deoptimization) out of FrameMap and into platform specific backend class ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/FrameMap.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: 09290d9deab3 Author: Andreas Woess Date: 2013-03-14 14:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/09290d9deab3 windows build fix: server+graal build needs TIERED; include graal in client build ! make/windows/makefiles/projectcreator.make Changeset: 1756b12d2246 Author: Thomas Wuerthinger Date: 2013-03-14 19:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1756b12d2246 Make optimistic optimizations customizable. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java Changeset: a8aab1ca133c Author: Thomas Wuerthinger Date: 2013-03-14 19:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a8aab1ca133c Enable exception probabilities for operations by default. ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java Changeset: b2f88686f68b Author: Thomas Wuerthinger Date: 2013-03-14 19:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b2f88686f68b Make OptimisticOptimizations enum public. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/OptimisticOptimizations.java Changeset: 5284877c419d Author: Thomas Wuerthinger Date: 2013-03-15 02:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5284877c419d Merge. Changeset: fa64b845d7f1 Author: Thomas Wuerthinger Date: 2013-03-15 02:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fa64b845d7f1 Disable deopt to guard conversion. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 59bd299750a8 Author: Doug Simon Date: 2013-03-14 18:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/59bd299750a8 fixed StackOverflowError in VirtualObject.toString() ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/VirtualObject.java Changeset: 9882af5c8504 Author: Doug Simon Date: 2013-03-15 15:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9882af5c8504 AMD64 HotSpot backend now models RBP as an incoming parameter that must be preserved until the end of the method. For non-leaf methods, the value is preserved in the special stack slot required by the HotSpot runtime for walking/inspecting frames of such methods. ! graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64AllocatorTest.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/AMD64HotSpotBackend.java + graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotEpilogueOp.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java + graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotReturnOp.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/AMD64HotSpotUnwindOp.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/FrameMap.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIR.java Changeset: 950cc0d8bc7c Author: Doug Simon Date: 2013-03-15 15:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/950cc0d8bc7c Merge. Changeset: ad4f977b49ce Author: Gilles Duboscq Date: 2013-03-14 13:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ad4f977b49ce Remove emitDeoptimizeOnOverflow and emitGuardCheck. Remove LIR.stubs and LIR.Code since it is not used anymore - 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.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java - graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Code.java - graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCode.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIR.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedGuardNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: ae7e78091f03 Author: Gilles Duboscq Date: 2013-03-14 13:43 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ae7e78091f03 Cleanup branching and jumps in LIRGenerator: JumpOp/BranchOp do not need a state. In emitBranch, emitNullCheckBranch, emitCompareBranch, emitOverflowCheckBranch and emitIntegerTestBranch both targets are always provided. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64ControlFlow.java ! graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXControlFlow.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Changeset: 5439cc2d73af Author: Gilles Duboscq Date: 2013-03-14 14:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5439cc2d73af Remove dead implicit null checks code in LIRGenerator ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Changeset: 60f90b4b6a12 Author: Gilles Duboscq Date: 2013-03-14 21:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/60f90b4b6a12 Implement implicit null check on HIR during guard lowering ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedWithNextNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/AccessNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: ec8ed9925f5a Author: Gilles Duboscq Date: 2013-03-15 13:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ec8ed9925f5a Fix implicit null checks depending on themselves Dependencies can be pointing to any node Fix missing argument to guard lowering phase ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 7d6cee014fb8 Author: Gilles Duboscq Date: 2013-03-15 13:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7d6cee014fb8 Make ValueAnchor canonicalization work in more cases ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ValueAnchorNode.java Changeset: 1774e72a60b3 Author: Gilles Duboscq Date: 2013-03-15 16:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1774e72a60b3 Guards with different anchors should be commoned out in the lowering phase ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java Changeset: 22cab6e509a3 Author: Gilles Duboscq Date: 2013-03-15 17:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/22cab6e509a3 Remove orphaned condition in implicit null check detection ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 6a9a467e2e8b Author: Gilles Duboscq Date: 2013-03-15 17:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6a9a467e2e8b Merge - graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java - graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java - graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Code.java - graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java Changeset: a1558c08d990 Author: Gilles Duboscq Date: 2013-03-15 17:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a1558c08d990 Merge - graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java - graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java - graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Code.java - graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCode.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIR.java Changeset: b246434a3e4a Author: Doug Simon Date: 2013-03-15 18:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b246434a3e4a made build-graal.xml be generated by mx ! make/build-graal.xml ! mx/commands.py ! mxtool/mx.py Changeset: bb9fba66b6ef Author: Doug Simon Date: 2013-03-15 18:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bb9fba66b6ef refactored HotSpotAMD64LIRGenerator into its own file ! 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/HotSpotAMD64LIRGenerator.java Changeset: 02a3fd8a8308 Author: Doug Simon Date: 2013-03-15 18:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/02a3fd8a8308 fixed issue preventing frame omission ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/FrameMap.java Changeset: 338b0d2382b3 Author: Doug Simon Date: 2013-03-15 18:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/338b0d2382b3 Merge. - graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java - graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java - graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Code.java - graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCode.java Changeset: 18e3213ab98a Author: Doug Simon Date: 2013-03-15 20:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/18e3213ab98a moved AMD64ConvertSnippets to (new) project com.oracle.graal.snippets.amd64 ! 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/snippets/AMD64ConvertSnippets.java + graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/snippets/amd64/AMD64ConvertSnippets.java ! mx/projects Changeset: 0e6cac0470dc Author: Doug Simon Date: 2013-03-15 20:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0e6cac0470dc re-enabled frame omission ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: a90648ecf04f Author: Doug Simon Date: 2013-03-15 20:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a90648ecf04f Merge. Changeset: 5115f468f8a4 Author: Doug Simon Date: 2013-03-15 20:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5115f468f8a4 removed unused project dependency ! mx/projects Changeset: 89006c76f737 Author: Christian Humer Date: 2013-03-15 21:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/89006c76f737 Final fields of base node can be optionally passed to builtin specialization method. And a few fixes. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeTreeBuilder.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ExecutableTypeMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/MethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/ShortCircuitData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/SpecializationMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ActualParameter.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MessageContainer.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/ParameterSpec.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethod.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/typesystem/TypeSystemCodeGenerator.java Changeset: 5663e3c7eabe Author: Christian Humer Date: 2013-03-15 21:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5663e3c7eabe Merge. - graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java - graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXDeoptimizationStub.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/snippets/AMD64ConvertSnippets.java - graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Code.java - graal/com.oracle.graal.lir.ptx/src/com/oracle/graal/lir/ptx/PTXCode.java Changeset: b1dff27a1da6 Author: Christian Humer Date: 2013-03-16 15:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b1dff27a1da6 Fixed specialization id generation. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Changeset: 88e3893dc0a8 Author: Christian Humer Date: 2013-03-16 15:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/88e3893dc0a8 Fixed messages were sometimes not shown in sourcegen. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/MessageContainer.java Changeset: 2be3865d9ea0 Author: Christian Humer Date: 2013-03-16 15:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2be3865d9ea0 Fixed minor bug for implicit parameters in sourcegen. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/template/TemplateMethodParser.java Changeset: 3fbe6772dbf6 Author: Christian Humer Date: 2013-03-16 15:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3fbe6772dbf6 Cleanup. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeData.java ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeFieldData.java Changeset: c210577168e7 Author: Christian Humer Date: 2013-03-16 16:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c210577168e7 Fixed not specializing nodes were named Null instead of Default. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeParser.java Changeset: 3d515bfc1677 Author: Christian Humer Date: 2013-03-16 18:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3d515bfc1677 Fixed build-graal.xml generation was out of sync with build-graal.xml. ! mx/commands.py Changeset: c807652d871c Author: Christian Humer Date: 2013-03-16 18:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c807652d871c Removed build-graal.xml since it is generated it should not be versioned. - make/build-graal.xml Changeset: 387339fbc64e Author: Christian Humer Date: 2013-03-16 18:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/387339fbc64e Added build-graal.xml .hgignore. Since it is generated there is no need to version it. ! .hgignore Changeset: d1449541ff37 Author: Christian Humer Date: 2013-03-16 21:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d1449541ff37 Build-graal needs to be versioned for non mx builds. ! .hgignore Changeset: 3d840eec7f2b Author: Christian Humer Date: 2013-03-16 21:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3d840eec7f2b Build-graal needs to be versioned for non mx builds. + make/build-graal.xml From doug.simon at oracle.com Sat Mar 23 19:00:16 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Sun, 24 Mar 2013 02:00:16 +0000 Subject: hg: graal/graal: 135 new changesets Message-ID: <20130324020721.B886348384@hg.openjdk.java.net> Changeset: 4f8143c9947a Author: Thomas Wuerthinger Date: 2013-03-17 17:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4f8143c9947a Remove unused code in LabelRef. ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LabelRef.java Changeset: 0fd97e8f511e Author: Thomas Wuerthinger Date: 2013-03-17 19:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0fd97e8f511e Fix guard canonicalization. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: 94f07a009d0e Author: Thomas Wuerthinger Date: 2013-03-17 19:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/94f07a009d0e Removed unused phase. - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertUnreachedToGuardPhase.java Changeset: 330b455f18be Author: Thomas Wuerthinger Date: 2013-03-17 19:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/330b455f18be Make scheduling phase customizable. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: 70dd2a8e170c Author: Thomas Wuerthinger Date: 2013-03-17 19:49 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/70dd2a8e170c Add test case for deoptimizing out of a synchronized method. Made guard lowering phase use earliest schedule. - graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CompiledMethodTest.java + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/deopt/CompiledMethodTest.java + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/deopt/SynchronizedMethodDeoptimizationTest.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: e24fb475bdec Author: Thomas Wuerthinger Date: 2013-03-17 21:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e24fb475bdec Remove PlaceHolderNode class definition. ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java Changeset: 6b6cbd8b8914 Author: Thomas Wuerthinger Date: 2013-03-17 21:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6b6cbd8b8914 Support deoptimizing before the entry to a synchronized method. ! src/cpu/x86/vm/interpreterGenerator_x86.hpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/share/vm/interpreter/templateInterpreter.cpp ! src/share/vm/interpreter/templateInterpreterGenerator.hpp ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/vframeArray.cpp ! src/share/vm/utilities/exceptions.hpp Changeset: 985e5188964f Author: Thomas Wuerthinger Date: 2013-03-17 21:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/985e5188964f Do not schedule earliest for guard lowering. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 022ae20329fb Author: Thomas Wuerthinger Date: 2013-03-17 21:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/022ae20329fb Rename field. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: 1f1c33c860a1 Author: Thomas Wuerthinger Date: 2013-03-17 21:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1f1c33c860a1 Enable convert deopts to guards optimization. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 4e7c62e6930b Author: Thomas Wuerthinger Date: 2013-03-17 22:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4e7c62e6930b Explicitely allocate r10 for deoptimization operation. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java Changeset: e9c6fc513719 Author: Thomas Wuerthinger Date: 2013-03-17 23:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e9c6fc513719 Remove last usages of scratch register. Separate runtime calls from normal method calls in LIR. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.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/AMD64DeoptimizeOp.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/AMD64HotSpotUnwindOp.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotspotDirectStaticCallOp.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotspotDirectVirtualCallOp.java ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/ArrayCopyIntrinsificationTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotDirectCallTargetNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotIndirectCallTargetNode.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/AbstractCallTargetNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DirectCallTargetNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IndirectCallTargetNode.java Changeset: 488c6d5e3b77 Author: Thomas Wuerthinger Date: 2013-03-17 23:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/488c6d5e3b77 Put exception handler entry back. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java Changeset: c63d0033f8e7 Author: Thomas Wuerthinger Date: 2013-03-17 23:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c63d0033f8e7 Remove getScratchRegister() from register configuration interface. ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/RegisterConfig.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java Changeset: 38be33a1c28d Author: Thomas Wuerthinger Date: 2013-03-18 00:12 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/38be33a1c28d Remove unused imports. ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java Changeset: 37977d1dcedc Author: Thomas Wuerthinger Date: 2013-03-18 00:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/37977d1dcedc Transmit deoptimization reason in thread local. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/utilities/exceptions.hpp Changeset: 16e34a47039b Author: Thomas Wuerthinger Date: 2013-03-18 00:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/16e34a47039b Make r10 allocatable. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRegisterConfig.java Changeset: 338e4adafa71 Author: Thomas Wuerthinger Date: 2013-03-18 00:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/338e4adafa71 Remove unused import. ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64DeoptimizeOp.java Changeset: d9d883aeb96f Author: Bernhard Urban Date: 2013-03-14 19:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d9d883aeb96f unittest: seperate target `longunittest' and `shortunittest' There are some unittests which took a quite long time, e.g. Test6850611 takes about 16seconds on my machine. We want them to shift into a seperate mx target. In order to move a testcase to `longunittest' you have to replace all `@Test' with `@LongTest' in the testclass. `@Test' belongs to `shortunittest'. The target `unittest` executes both, `@Test' and `@LongTest'. Note: Mixing `@Test' and `@LongTest' in a testclass, causes that each testmethod is executed for both, `shortunittest' and `longunittest', mx targets. ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotspot/Test6850611.java + graal/com.oracle.graal.test/src/com/oracle/graal/test/GraalLongUnitTest.java ! graal/com.oracle.graal.test/src/com/oracle/graal/test/GraalTest.java + graal/com.oracle.graal.test/src/com/oracle/graal/test/LongTest.java ! mx/commands.py Changeset: c38d2870439e Author: Bernhard Urban Date: 2013-03-18 13:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c38d2870439e unittest: move testcases that takes longer than 100ms into longunittest ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/deopt/CompiledMethodTest.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Catch_NPE_07.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Catch_Two02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Catch_Two03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Throw_InNested.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Throw_Synchronized01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Throw_Synchronized02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Throw_Synchronized03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_allocate01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_field04.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_invoke01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_life.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_nest02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotspot/Test6196102.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/EnumMap02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/System_setOut.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/UnsafeAccess01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/ClassLoader_loadClass01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_Literal01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_asSubclass01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_cast01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_forName01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_forName02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_forName03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_forName04.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_forName05.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Class_getInterfaces01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Object_getClass01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/Object_toString01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/String_intern02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/String_intern03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/loop/LoopParseLong.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/loop/LoopSwitch01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/micro/BigObjectParams02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/micro/Matrix01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/micro/ReferenceMap01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/micro/StrangeFrames.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/optimize/Conditional01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/optimize/NCE_FlowSensitive05.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/optimize/VN_InstanceOf02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Class_getField01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Class_getField02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Class_getMethod01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Class_getMethod02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Class_newInstance03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_get01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_get02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_get03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_get04.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_getType01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_set01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_set02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_set03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Invoke_except01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Invoke_main01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Invoke_main03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Method_getParameterTypes01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Method_getReturnType01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Monitor_contended01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Monitor_notowner01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Object_wait01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Object_wait02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Object_wait03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Object_wait04.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/ThreadLocal03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_getState02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_isInterrupted02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_isInterrupted03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_isInterrupted04.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_isInterrupted05.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_join01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_join02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_join03.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_new01.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_new02.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/threads/Thread_sleep01.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/CheckCastTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfDynamicTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewArrayTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewInstanceTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewMultiArrayTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java Changeset: 90e51c504f37 Author: Bernhard Urban Date: 2013-03-14 16:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/90e51c504f37 .hgignore: ignore tag files generated by ctags and cscope ! .hgignore Changeset: a3c30d467f96 Author: Bernhard Urban Date: 2013-03-18 15:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a3c30d467f96 unittest: just do a single JVM call avoid multiple executions of the JVM in order to avoid high startup costs. before: > mx --vm server unittest 355.86s user 2.97s system 175% cpu 3:24.21 total > mx --vm server longunittest 241.27s user 1.40s system 151% cpu 2:39.88 total > mx --vm server shortunittest 203.36s user 2.23s system 269% cpu 1:16.42 total after: > mx --vm server unittest 202.39s user 1.02s system 130% cpu 2:36.04 total > mx --vm server longunittest 187.39s user 0.97s system 126% cpu 2:28.38 total > mx --vm server shortunittest 87.39s user 0.68s system 265% cpu 33.15 total ! mx/commands.py Changeset: 2286bae19255 Author: Doug Simon Date: 2013-03-18 18:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2286bae19255 increased template interpreter size by 20K ! src/cpu/x86/vm/templateInterpreter_x86.hpp Changeset: 4e7a668054ea Author: Doug Simon Date: 2013-03-18 18:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4e7a668054ea added field to ValueAnchorNode to prevent canonicalization and virtualization; used new field to fix issue with return value materialization floating below the final monitorexit of a synchronized method ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/MonitorGraphTest.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ValueAnchorNode.java Changeset: d91353f81320 Author: Thomas Wuerthinger Date: 2013-03-18 20:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d91353f81320 Do not clone IdealGraphVisualizer editor windows as the default action - reuse existing window. Added explicit "clone" menu item. ! src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/GraphNode.java + src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/actions/CloneGraphAction.java ! src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/actions/DiffGraphCookie.java + src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/actions/GraphCloneCookie.java ! src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/actions/GraphOpenCookie.java ! src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/services/GraphViewer.java ! src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/DiagramViewModel.java ! src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/GraphViewerImplementation.java Changeset: 63f909f4ba3a Author: Thomas Wuerthinger Date: 2013-03-18 20:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/63f909f4ba3a Merge. Changeset: 79f0ff46290b Author: Doug Simon Date: 2013-03-18 18:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/79f0ff46290b removed unused code ! 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 ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 8d6ea1915d42 Author: Doug Simon Date: 2013-03-18 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8d6ea1915d42 merged CodeInfo into InstalledCode (GRAAL-156) ! 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/CodeInfo.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/InstalledCode.java ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/package-info.java ! graal/com.oracle.graal.asm.test/src/com/oracle/graal/asm/test/AssemblerTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraalCompilerTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.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/HotSpotCodeInfo.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/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinterObserver.java ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalJavaAccess.hpp Changeset: d2fef63dfec8 Author: Doug Simon Date: 2013-03-18 18:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d2fef63dfec8 Merge. Changeset: 9ac11897f727 Author: Doug Simon Date: 2013-03-18 21:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9ac11897f727 added tests for ensuring frame omission on AMD64 works for simple cases + graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java ! mx/projects Changeset: 65ba93f118d4 Author: Doug Simon Date: 2013-03-18 21:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/65ba93f118d4 Merge. Changeset: 98b90a7bb764 Author: Christian Wimmer Date: 2013-03-18 19:21 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/98b90a7bb764 Only stack slots in caller frame are method arguments. Also optimize object arguments when the runtime supports it. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 55ef03d64f03 Author: Christian Wimmer Date: 2013-03-18 19:28 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/55ef03d64f03 Generalize read and write of fixed register for snippets. Move to HotSpot-independent project. ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/RegisterNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/HotSpotSnippetUtils.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReadRegisterNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/WriteRegisterNode.java Changeset: 562e590b44b8 Author: Christian Wimmer Date: 2013-03-18 19:33 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/562e590b44b8 Allow customization in subclass ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 29d44e82b8f7 Author: Christian Wimmer Date: 2013-03-18 19:34 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/29d44e82b8f7 Allow instantiation without creating a subclass ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Call.java Changeset: 5fbb2df2b47f Author: Christian Wimmer Date: 2013-03-18 19:38 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/5fbb2df2b47f Allow lowering of UnwindNode and ExceptionObjectNode. The HotSpot code still uses the old LIR lowering. ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java Changeset: a69eb5f539d9 Author: Christian Wimmer Date: 2013-03-18 19:39 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/a69eb5f539d9 Merge - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeInfo.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotCodeInfo.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java Changeset: 6084a9e51fc2 Author: Doug Simon Date: 2013-03-19 09:42 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6084a9e51fc2 removed debug code ! graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java Changeset: fa5a670a1682 Author: Doug Simon Date: 2013-03-19 11:10 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fa5a670a1682 added support for substituting constructors ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotSnippetInstaller.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java Changeset: 676fa31bd3f0 Author: Christian Humer Date: 2013-03-19 11:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/676fa31bd3f0 Uninitialized cases produced wrong call to throw new UnsuportedOperationException. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/node/NodeCodeGenerator.java Changeset: 5981ea5996e8 Author: Christian Humer Date: 2013-03-19 11:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5981ea5996e8 Merge. - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeInfo.java - graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CompiledMethodTest.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotCodeInfo.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/RegisterNode.java - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertUnreachedToGuardPhase.java Changeset: 25691fcb505a Author: Thomas Wuerthinger Date: 2013-03-19 14:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/25691fcb505a Transmit deoptimization reason in thread local instead of scratch register. ! src/cpu/x86/vm/graalRuntime_x86.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp Changeset: a2f83d256423 Author: Roland Schatz Date: 2013-03-19 15:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a2f83d256423 Eliminate checkcast between two NodeIntrinsic calls. ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java Changeset: 2e27c84305a2 Author: Doug Simon Date: 2013-03-19 09:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2e27c84305a2 removed debug code ! graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java Changeset: 733e2b88ff26 Author: Doug Simon Date: 2013-03-19 09:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/733e2b88ff26 moved HotSpot specific AMD64FrameOmissionTest to (new) project com.oracle.graal.hotspot.amd64.test and renamed it to AMD64HotSpotFrameOmissionTest - graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java + graal/com.oracle.graal.hotspot.amd64.test/src/com/oracle/graal/hotspot/amd64/test/AMD64HotSpotFrameOmissionTest.java ! mx/projects Changeset: ae15e5d0571b Author: Doug Simon Date: 2013-03-19 09:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ae15e5d0571b rename: HotSpotAMD64LIRGenerator -> AMD64HotSpotLIRGenerator ! 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/AMD64HotSpotLIRGenerator.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/HotSpotAMD64LIRGenerator.java Changeset: 99a71b8c1c5d Author: Doug Simon Date: 2013-03-19 14:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/99a71b8c1c5d removed unused code ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCodeInstaller.hpp Changeset: 8448cbac78e4 Author: Doug Simon Date: 2013-03-19 14:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8448cbac78e4 made frame omission test ignore padding instructions at the end of installed code ! graal/com.oracle.graal.hotspot.amd64.test/src/com/oracle/graal/hotspot/amd64/test/AMD64HotSpotFrameOmissionTest.java Changeset: c2e39aa097c5 Author: Doug Simon Date: 2013-03-19 14:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c2e39aa097c5 removed unnecessary MethodEndBreakpointGuards option ! graal/com.oracle.graal.hotspot.amd64.test/src/com/oracle/graal/hotspot/amd64/test/AMD64HotSpotFrameOmissionTest.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: b8666670daf5 Author: Doug Simon Date: 2013-03-19 14:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b8666670daf5 Merge. ! graal/com.oracle.graal.hotspot.amd64.test/src/com/oracle/graal/hotspot/amd64/test/AMD64HotSpotFrameOmissionTest.java Changeset: 2ee5508896f1 Author: Doug Simon Date: 2013-03-19 14:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2ee5508896f1 Merge. Changeset: 86a9e3ea8fe9 Author: Doug Simon Date: 2013-03-19 15:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/86a9e3ea8fe9 support substitutions for classes that made not be part of the runtime (GRAAL-123) ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/AESCryptSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CipherBlockChainingSubstitutions.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ClassSubstitution.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java Changeset: 48daec24df96 Author: Doug Simon Date: 2013-03-19 15:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/48daec24df96 made frame omission test work in -graal as well as -server VM ! graal/com.oracle.graal.hotspot.amd64.test/src/com/oracle/graal/hotspot/amd64/test/AMD64HotSpotFrameOmissionTest.java Changeset: fa8472ab7e11 Author: Doug Simon Date: 2013-03-19 15:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fa8472ab7e11 canonicalized projects ! mx/projects Changeset: e947c5d9f2f3 Author: Doug Simon Date: 2013-03-19 15:52 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e947c5d9f2f3 Merge. Changeset: 40eaf9970bff Author: Doug Simon Date: 2013-03-19 15:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/40eaf9970bff removed unused code ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java Changeset: a58a48bb0a5b Author: Roland Schatz Date: 2013-03-19 15:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a58a48bb0a5b Remove unnecessary assert. ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java Changeset: fd9488c69250 Author: Roland Schatz Date: 2013-03-19 15:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fd9488c69250 Fix createUnwind. ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 2543392b9197 Author: Roland Schatz Date: 2013-03-19 17:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2543392b9197 Merge. - graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/HotSpotAMD64LIRGenerator.java Changeset: 807fd844ed2a Author: Christian Wimmer Date: 2013-03-19 10:00 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/807fd844ed2a InvokeWithException cannot be the lastLocationAccess for a FloatingReadNode. Since it is both the invoke and a control flow split, the scheduler cannot schedule anything immediately the invoke. It can only schedule in the normal or exceptional successor - and we have to tell the scheduler here which side it needs to choose by putting in the location identity on both successors. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java Changeset: 496db8bf756d Author: Thomas Wuerthinger Date: 2013-03-19 18:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/496db8bf756d Killing cfg path to deoptimization. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: b4dea2fa8d9b Author: Thomas Wuerthinger Date: 2013-03-19 18:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b4dea2fa8d9b Merge. - graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/HotSpotAMD64LIRGenerator.java Changeset: 0edb2a515cb1 Author: Thomas Wuerthinger Date: 2013-03-19 20:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0edb2a515cb1 Fixes a corner case when killing the control flowing into a deoptimize node. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: 85d4392b9e26 Author: Thomas Wuerthinger Date: 2013-03-19 20:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/85d4392b9e26 Introduce a ControlSinkNode base class. + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ControlSinkNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ReturnNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/PostOrderNodeIterator.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ScopedPostOrderNodeIterator.java Changeset: a019b27cb9ef Author: Thomas Wuerthinger Date: 2013-03-19 20:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a019b27cb9ef Merge. Changeset: 9f0ae7df921e Author: Thomas Wuerthinger Date: 2013-03-19 23:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9f0ae7df921e Bug fix and additional assertions in deoptimize to guard phase. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: bcfe9832552a Author: Thomas Wuerthinger Date: 2013-03-20 00:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bcfe9832552a Speical case ExceptionObjectNode in deopt to guard conversion. ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Changeset: e53b31b29aa4 Author: Lukas Stadler Date: 2013-03-19 17:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e53b31b29aa4 clean up unused true/false constants in ConditionalEliminationPhase ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/PostOrderNodeIterator.java Changeset: acc24060b64f Author: Gilles Duboscq Date: 2013-03-18 14:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/acc24060b64f Use implicit null checks for all null checks ! graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXLIRGenerator.java ! graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java ! graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64Move.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/NullCheckNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/LIRGeneratorTool.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: d1d486c03e8a Author: Gilles Duboscq Date: 2013-03-19 14:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d1d486c03e8a Fix version parsing in mx ! mxtool/mx.py Changeset: 39b37e601242 Author: Gilles Duboscq Date: 2013-03-20 11:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/39b37e601242 Disable scaladacpo specs because it sometimes returns non-zero while there is no visible failure ! mx/sanitycheck.py Changeset: 0e2c530885d1 Author: Gilles Duboscq Date: 2013-03-20 12:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0e2c530885d1 If IgnoreUnrecognizedVMOptions is set then the Graal checks for unsupported options is just a warning instead of an error ! src/share/vm/runtime/arguments.cpp Changeset: 7aefc149c471 Author: Lukas Stadler Date: 2013-03-20 11:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7aefc149c471 allow multiple identities in MemoryCheckpoint interface ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StartNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MemoryCheckpoint.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/RuntimeCallNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteMemoryCheckpointNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: d6ec0c05a2a2 Author: Lukas Stadler Date: 2013-03-20 11:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d6ec0c05a2a2 don't use Access interface in ReadNode.canonicalizeRead ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java Changeset: c4028b279ebd Author: Lukas Stadler Date: 2013-03-20 11:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c4028b279ebd change naming in Access interface ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/Access.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/AccessNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingAccessNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 0f86d2449070 Author: Lukas Stadler Date: 2013-03-20 11:34 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0f86d2449070 simplify VirtualInstanceNode ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java Changeset: 2d1b0b20f89d Author: Lukas Stadler Date: 2013-03-20 13:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2d1b0b20f89d small change VirtualInstanceNode constructor ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectCloneNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewInstanceNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java Changeset: 841ae7237a14 Author: Lukas Stadler Date: 2013-03-20 13:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/841ae7237a14 DynamicCounterNode for debugging/profiling purposes + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java Changeset: afb190b1eeb3 Author: Lukas Stadler Date: 2013-03-11 18:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/afb190b1eeb3 added RegisterFinalizer.virtualize ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java Changeset: 701290361dad Author: Lukas Stadler Date: 2013-03-20 14:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/701290361dad Merge ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: c0db24536e97 Author: Christian Wimmer Date: 2013-03-20 08:22 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/c0db24536e97 Remove flag and optimization for object method arguments in the register allocator. Needs more investigation of GC impact on HotSpot ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: a007cbe2be30 Author: Gilles Duboscq Date: 2013-03-20 16:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a007cbe2be30 Add asFixedNode to FloatingAccessNode so that GuardLoweringPhase supports any type of FloatingAccessNode Relax an assert in GuardLoweringPhase to only check for FixedNode instead of AccessNode ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingAccessNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 24ddd568aa0c Author: Gilles Duboscq Date: 2013-03-20 18:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/24ddd568aa0c Refactor GuardLoweringPhase: use the same iterator code for implict null checks and guard lowering ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/GuardLoweringPhase.java Changeset: 743d0ac1fc81 Author: Gilles Duboscq Date: 2013-03-20 18:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/743d0ac1fc81 IGV should not crash when comparing graphs with references to deleted nodes ! src/share/tools/IdealGraphVisualizer/Difference/src/com/sun/hotspot/igv/difference/Difference.java Changeset: 2bfb9644dcc2 Author: Bernhard Urban Date: 2013-03-18 19:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2bfb9644dcc2 unittest: call wrapper to avoid long command lines on windows there's a restriction of ~32k characters for the whole command line. fwiw, linux/bsd have also restrictions, but it is unlikely that we'll ever hit that (2097k characters on my linux machine). + mx/JUnitWrapper.java ! mx/commands.py Changeset: 0685ba2d4a4f Author: Doug Simon Date: 2013-03-20 16:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0685ba2d4a4f extra test case for System.identityHashCode() ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/lang/System_identityHashCode01.java Changeset: 2d311abb3ec7 Author: Doug Simon Date: 2013-03-20 18:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2d311abb3ec7 rename: IntrinsificationTest -> MethodSubstitutionTest - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/IntrinsificationTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/MethodSubstitutionTest.java Changeset: c3fc0e257800 Author: Doug Simon Date: 2013-03-20 18:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c3fc0e257800 rename: SnippetIntrinsificationPhase -> NodeIntrinsificationPhase + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeIntrinsificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java Changeset: e996a732c740 Author: Doug Simon Date: 2013-03-20 20:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e996a732c740 renamings as part of a move away from the overloading of the "snippet" term for various code replacement/substitution mechanisms towards it being solely for the concept of IR lowering ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotReplacementsInstaller.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotSnippetInstaller.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ReplacementsInstaller.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippet.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetProvider.java Changeset: 3f6a028deb5f Author: Doug Simon Date: 2013-03-20 20:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3f6a028deb5f comment fix ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java Changeset: 488a5f694786 Author: Doug Simon Date: 2013-03-20 20:34 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/488a5f694786 removed unnecessary interface ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetProvider.java Changeset: d9347ee39fbe Author: Doug Simon Date: 2013-03-20 21:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d9347ee39fbe rename: SnippetsInterface -> Snippets ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CheckCastSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/InstanceOfSnippets.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/snippets/ObjectCloneSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/snippets/amd64/AMD64ConvertSnippets.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java ! graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ReplacementsInstaller.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippets.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetsInterface.java Changeset: 8f274684c123 Author: Doug Simon Date: 2013-03-20 21:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8f274684c123 rename: SnippetIntrinsificationVerificationPhase -> NodeIntrinsificationVerificationPhase + graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeIntrinsificationVerificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ReplacementsInstaller.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationVerificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java Changeset: 2361bf148c06 Author: Doug Simon Date: 2013-03-20 22:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2361bf148c06 rename packages: *snippets* -> *replacements* ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotReplacementsInstaller.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaField.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/VMErrorNode.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/AESCryptSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CheckCastSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CipherBlockChainingSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ClassSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/InstanceOfSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MonitorSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/TypeCheckSnippetUtils.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/AESCryptSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopyNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CheckCastSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CipherBlockChainingSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ClassSubstitutions.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/InstanceOfSnippets.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/snippets/ObjectCloneNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectCloneSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/SystemSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ThreadSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/TypeCheckSnippetUtils.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.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java + graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/replacements/amd64/AMD64ConvertSnippets.java - graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/snippets/amd64/AMD64ConvertSnippets.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/CheckCastTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InstanceOfDynamicTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InstanceOfTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InvokeTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/MonitorTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewArrayTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewInstanceTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewMultiArrayTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/PointerTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/TypeCheckTest.java + graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/WordTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/CheckCastTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfDynamicTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InvokeTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/MethodSubstitutionTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/MonitorTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewInstanceTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewMultiArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/TypeCheckTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/ClassSubstitution.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/DoubleSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/FloatSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/GraalIntrinsics.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/InstanceOfSnippetsTemplates.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/IntegerSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/JavacBug.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Log.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/LongSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/MathSubstitutionsX86.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeClassSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeIntrinsificationVerificationPhase.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeIntrinsificationVerificationPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/ReplacementsInstaller.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ReplacementsInstaller.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Snippet.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetCounter.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetFrameStateCleanupPhase.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetTemplate.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Snippets.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/UnsafeSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/UnsignedMathSubstitutions.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitCountNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectReadNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/MacroNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java + graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ClassSubstitution.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/DoubleSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/FloatSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/IntegerSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/JavacBug.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Log.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/LongSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/MathSubstitutionsX86.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeClassSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeIntrinsificationPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippet.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetCounter.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetFrameStateCleanupPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippets.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsafeSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsignedMathSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitCountNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanForwardNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanReverseNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BranchProbabilityNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectObjectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectReadNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ExplodeLoopNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/LoadSnippetVarargParameterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MacroNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MathIntrinsicNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReadRegisterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReverseBytesNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/WriteRegisterNode.java ! src/share/vm/graal/graalRuntime.hpp Changeset: 102b5249e97e Author: Doug Simon Date: 2013-03-20 22:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/102b5249e97e rename projects: *snippets* -> *replacements* (GRAAL-178) = graal/com.oracle.graal.replacements.amd64/src/com/oracle/graal/replacements/amd64/AMD64ConvertSnippets.java < graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/replacements/amd64/AMD64ConvertSnippets.java + graal/com.oracle.graal.replacements.test/overview.html = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/CheckCastTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/CheckCastTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/InstanceOfDynamicTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InstanceOfDynamicTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/InstanceOfTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InstanceOfTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/InvokeTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/InvokeTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MonitorTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/MonitorTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/NewArrayTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewArrayTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/NewInstanceTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewInstanceTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/NewMultiArrayTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/NewMultiArrayTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/PointerTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/PointerTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/TypeCheckTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/TypeCheckTest.java = graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/WordTest.java < graal/com.oracle.graal.snippets.test/src/com/oracle/graal/replacements/WordTest.java + graal/com.oracle.graal.replacements/overview.html = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ClassSubstitution.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/ClassSubstitution.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DoubleSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/DoubleSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/FloatSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/FloatSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalIntrinsics.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/GraalIntrinsics.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/InstanceOfSnippetsTemplates.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/InstanceOfSnippetsTemplates.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntegerSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/IntegerSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/JavacBug.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/JavacBug.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/Log.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Log.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/LongSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/LongSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/MathSubstitutionsX86.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeClassSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeClassSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationVerificationPhase.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/NodeIntrinsificationVerificationPhase.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/ReplacementsInstaller.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/Snippet.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Snippet.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetCounter.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetCounter.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetFrameStateCleanupPhase.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetFrameStateCleanupPhase.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetTemplate.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/SnippetTemplate.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/Snippets.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/Snippets.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsafeSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/UnsafeSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsignedMathSubstitutions.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/UnsignedMathSubstitutions.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitCountNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectReadNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/MacroNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java = graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java < graal/com.oracle.graal.snippets/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java - graal/com.oracle.graal.snippets.test/overview.html - graal/com.oracle.graal.snippets/overview.html ! make/build-graal.xml ! mx/projects Changeset: 7e281cb9ea10 Author: Doug Simon Date: 2013-03-21 09:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7e281cb9ea10 Merge. ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: ba659864f935 Author: Doug Simon Date: 2013-03-21 11:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ba659864f935 Merge. Changeset: 11bada5f81a6 Author: Doug Simon Date: 2013-03-21 11:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/11bada5f81a6 refactored MethodSubstitution and MacroSubstitution into top level classes ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/AESCryptSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CipherBlockChainingSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ClassSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ClassSubstitution.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DoubleSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/FloatSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntegerSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/LongSubstitutions.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MacroSubstitution.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MethodSubstitution.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeClassSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsafeSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsignedMathSubstitutions.java Changeset: 5d3fa6f949fb Author: Doug Simon Date: 2013-03-21 12:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5d3fa6f949fb created com.oracle.graal.api.replacements project and moved ClassSubstitution and MethodSubstitution there ! graal/com.oracle.graal.api.replacements/src/com/oracle/graal/api/replacements/ClassSubstitution.java < graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ClassSubstitution.java ! graal/com.oracle.graal.api.replacements/src/com/oracle/graal/api/replacements/MethodSubstitution.java < graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MethodSubstitution.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/AESCryptSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CipherBlockChainingSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ClassSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/DoubleSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/FloatSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/IntegerSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/LongSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeClassSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsafeSubstitutions.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsignedMathSubstitutions.java ! make/build-graal.xml ! mx/projects Changeset: 24608582da70 Author: Doug Simon Date: 2013-03-21 12:23 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/24608582da70 method substitutions are now stored with a MethodSubstitution.class key value in the compiler storage of the original (i.e., substituted) method ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java ! make/build-graal.xml ! mx/projects Changeset: 1571adaf302b Author: Doug Simon Date: 2013-03-21 12:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1571adaf302b snippet graphs are now stored with a Snippet.class key value in the compiler storage of the snippet method ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MonitorSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetTemplate.java Changeset: 86ef0438d1d3 Author: Roland Schatz Date: 2013-03-21 16:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/86ef0438d1d3 Generalize FloatingReadPhase to support arbitrary floatable access nodes. + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatableAccessNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java Changeset: a3ce41332d76 Author: Christian Humer Date: 2013-03-21 13:12 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a3ce41332d76 Cleanup. ! graal/com.oracle.truffle.api.codegen.test/src/com/oracle/truffle/api/codegen/test/RuntimeStringTest.java Changeset: fbf25ec7aa5e Author: Christian Humer Date: 2013-03-21 13:12 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fbf25ec7aa5e Fixed varargs attribute was not copied in ExectableElements. ! graal/com.oracle.truffle.codegen.processor/src/com/oracle/truffle/codegen/processor/ast/CodeExecutableElement.java Changeset: 182753fdaa7f Author: Christian Humer Date: 2013-03-21 13:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/182753fdaa7f Merge. - graal/com.oracle.graal.compiler.amd64.test/src/com/oracle/graal/compiler/amd64/test/AMD64FrameOmissionTest.java - graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/HotSpotAMD64LIRGenerator.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotSnippetInstaller.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/AESCryptSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopyNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CheckCastSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CipherBlockChainingSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ClassSubstitutions.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/InstanceOfSnippets.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/snippets/ObjectCloneNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectCloneSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/SystemSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ThreadSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/TypeCheckSnippetUtils.java - graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/snippets/amd64/AMD64ConvertSnippets.java - graal/com.oracle.graal.snippets.test/overview.html - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/CheckCastTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfDynamicTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/IntrinsificationTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InvokeTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/MonitorTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewInstanceTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewMultiArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/TypeCheckTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java - graal/com.oracle.graal.snippets/overview.html - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ClassSubstitution.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/DoubleSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/FloatSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/IntegerSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/JavacBug.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Log.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/LongSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/MathSubstitutionsX86.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeClassSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippet.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetCounter.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetFrameStateCleanupPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationVerificationPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetProvider.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetsInterface.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsafeSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsignedMathSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitCountNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanForwardNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanReverseNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BranchProbabilityNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectObjectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectReadNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ExplodeLoopNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/LoadSnippetVarargParameterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MacroNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MathIntrinsicNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReadRegisterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReverseBytesNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/WriteRegisterNode.java Changeset: 18e2856d1993 Author: Christian Humer Date: 2013-03-21 13:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/18e2856d1993 Merge. - graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ClassSubstitution.java Changeset: 467b41309cda Author: Christian Humer Date: 2013-03-21 18:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/467b41309cda Added annotation processor for verifing @ClassSubstitution and @MethodSubstitution annotation at compile time. + graal/com.oracle.graal.replacements.verifier/src/META-INF/services/javax.annotation.processing.Processor + graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/APHotSpotSignature.java + graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/AbstractVerifier.java + graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/ClassSubstitutionVerifier.java + graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/MethodSubstitutionVerifier.java + graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/VerifierAnnotationProcessor.java ! mx/projects Changeset: 695abf633f6d Author: Christian Humer Date: 2013-03-21 18:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/695abf633f6d Merge. Changeset: 6920ffef95a8 Author: Doug Simon Date: 2013-03-21 13:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6920ffef95a8 small documentation fix ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: be5ce3e9d473 Author: Doug Simon Date: 2013-03-21 14:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/be5ce3e9d473 rename: originalMethod -> originalMember ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: 8ed80723c13b Author: Doug Simon Date: 2013-03-21 14:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8ed80723c13b rename: GraalIntrinsics -> GraalMethodSubstitutions ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java - graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalIntrinsics.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalMethodSubstitutions.java Changeset: 87346100d7a5 Author: Doug Simon Date: 2013-03-21 15:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/87346100d7a5 temporary file is removed when unittests fail ! mx/commands.py Changeset: a444497c48a9 Author: Doug Simon Date: 2013-03-21 15:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a444497c48a9 moved tests for HotSpot specific method substitutions into HotSpotMethodSubstitutionsTest + graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java ! mx/projects Changeset: 94d98d334ccd Author: Doug Simon Date: 2013-03-21 15:55 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/94d98d334ccd minor punctuation fix ! mx/JUnitWrapper.java Changeset: 10293cbfc2b6 Author: Doug Simon Date: 2013-03-22 11:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/10293cbfc2b6 wrote implementations for node intrinsics so that they can be interpreted when a method substitution is deoptimized and added unit tests to ensure existing method substitutions can run interpreted ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java - graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java + graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionsTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/IdentityHashCodeStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ThreadIsInterruptedStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java + graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/StandardMethodSubstitutionsTest.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 85599b9c4b03 Author: Doug Simon Date: 2013-03-22 11:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/85599b9c4b03 Merge. ! mx/projects Changeset: 79539d508429 Author: Doug Simon Date: 2013-03-22 11:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/79539d508429 enabled annotation processor for @ClassSubstitution and @MethodSubstitution in the com.oracle.graal.hotspot project ! mx/projects Changeset: 39c7142e7aef Author: Doug Simon Date: 2013-03-22 11:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/39c7142e7aef added support for projects that extend a package defined in another project when canonicalizing projects ! mx/projects ! mxtool/mx.py Changeset: 2d0160c35f8f Author: Roland Schatz Date: 2013-03-22 13:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2d0160c35f8f Fix unittest on server0. ! mx/commands.py Changeset: 21bf57680185 Author: Gilles Duboscq Date: 2013-03-21 18:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/21bf57680185 Fuse the ExceptionObject its DispatchBegin into a single node since it has to be atomic while gurads are floating ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginStateSplitNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DispatchBeginNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Changeset: 580e876394e1 Author: Christian Humer Date: 2013-03-22 15:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/580e876394e1 Fixed substitution verifier emitted wrong error. ! graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/ClassSubstitutionVerifier.java Changeset: 9208719445e2 Author: Christian Humer Date: 2013-03-22 15:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9208719445e2 Merge. Changeset: 3e85441907de Author: Mick Jordan Date: 2013-03-22 09:28 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/3e85441907de GraphBuilderPhase: add createInvokeNode method by refactoring appendInvoke, for use by subclasses overriding handleUnresolvedInvoke ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 83fc36378013 Author: Doug Simon Date: 2013-03-22 14:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/83fc36378013 finalizer registration is now done via method substitution ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/BciBlockMapping.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java Changeset: 7ef643b72910 Author: Doug Simon Date: 2013-03-22 15:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7ef643b72910 gave MembarNode.memoryBarrier() an implementation that actually triggers barriers ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/UnsafeSubstitutions.java Changeset: b6b9ab1fde62 Author: Doug Simon Date: 2013-03-22 15:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b6b9ab1fde62 removed support for using the Eclipse batch compiler bundled with Eclipse - depending on the version, it has bugs with respect to annotation processing To use the Eclipse batch compiler, a stand alone ecj-.jar should be downloaded and copied to mx/ecj.jar. ! mxtool/mx.py Changeset: 71a9f3a5d8c5 Author: Doug Simon Date: 2013-03-22 18:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/71a9f3a5d8c5 Merge. ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 7485b8a7cd24 Author: Doug Simon Date: 2013-03-22 18:24 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7485b8a7cd24 Backed out changeset: 83fc36378013 ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/BciBlockMapping.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java Changeset: ad673bbfb4e5 Author: Doug Simon Date: 2013-03-22 19:07 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ad673bbfb4e5 undid the change that disabled frame state cleanup for method substitutions ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: 2ffd472c5d25 Author: Doug Simon Date: 2013-03-22 19:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2ffd472c5d25 Backed out changeset: 10293cbfc2b6 ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java + graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java - graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionsTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/IdentityHashCodeStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ThreadIsInterruptedStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java - graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/StandardMethodSubstitutionsTest.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 3b7e3b2306f0 Author: Doug Simon Date: 2013-03-22 19:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3b7e3b2306f0 fixed warnings ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java Changeset: ce7aae2d4fc7 Author: Christian Humer Date: 2013-03-22 16:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ce7aae2d4fc7 Fixed type variables should be erased before comparing types in MethodSubstiutionVerifier. ! graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/MethodSubstitutionVerifier.java Changeset: fec5ebd058b7 Author: Christian Humer Date: 2013-03-22 18:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fec5ebd058b7 Fixed ecj fails when performing type erasure on void types. ! graal/com.oracle.graal.replacements.verifier/src/com/oracle/graal/replacements/verifier/MethodSubstitutionVerifier.java Changeset: 00d2e017073d Author: Christian Humer Date: 2013-03-22 18:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/00d2e017073d Merge. Changeset: d815f0ac9ed3 Author: Christian Humer Date: 2013-03-22 19:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/d815f0ac9ed3 Merge. - graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionsTest.java - graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/StandardMethodSubstitutionsTest.java From java at stefan-marr.de Fri Mar 29 08:55:41 2013 From: java at stefan-marr.de (Stefan Marr) Date: Fri, 29 Mar 2013 16:55:41 +0100 Subject: How to experiment with Truffle? Message-ID: <880827CB-E14F-42E0-ACD5-08FB0539BDD5@stefan-marr.de> Hi: I was trying to look a bit into Truffle and was wondering whether there is some documentation. Is there perhaps an overview or a getting started guide somewhere? While I found the com.oracle.truffle.* packages in the Graal repository, I didn't see it mentioned anywhere else. Specifically, I was looking for the first steps of setting it up and perhaps a working example. I found the wiki page for Graal itself [1], but didn't see anything about Truffle specifically. Furthermore, what are the current requirements for using Truffle? Do I need a Graal VM or can it be used independently of Graal, i.e., on a vanilla JDK? Thanks Stefan [1] https://wikis.oracle.com/display/OpenJDK/Graal -- Stefan Marr Software Languages Lab Vrije Universiteit Brussel Pleinlaan 2 / B-1050 Brussels / Belgium http://soft.vub.ac.be/~smarr Phone: +32 2 629 2974 Fax: +32 2 629 3525 From thomas.wuerthinger at oracle.com Fri Mar 29 09:24:01 2013 From: thomas.wuerthinger at oracle.com (Thomas Wuerthinger) Date: Fri, 29 Mar 2013 17:24:01 +0100 Subject: How to experiment with Truffle? In-Reply-To: <880827CB-E14F-42E0-ACD5-08FB0539BDD5@stefan-marr.de> References: <880827CB-E14F-42E0-ACD5-08FB0539BDD5@stefan-marr.de> Message-ID: <4518CFC3-F954-4BE4-B065-15F80FD782EB@oracle.com> Stefan, The current status is that - The Truffle API is available and languages using it can run on a vanilla JDK. - There is a short API documentation in the form of unit tests plus javadoc. It explains the most important parts of the API. You can either browse it in source code form (recommended) or in javadoc form [1]. - There is an example guest language implementation available in the project "com.oracle.truffle.sl". We are still working on more comprehensive documentation for the OpenJDK wiki. Also, the work on the special compilation phases for Graal related to Truffle is still under progress. Regards, thomas [1] http://lafo.ssw.uni-linz.ac.at/javadoc/graalvm/com.oracle.truffle.api.test/javadoc/com/oracle/truffle/api/test/package-summary.html On Mar 29, 2013, at 4:55 PM, Stefan Marr wrote: > Hi: > > I was trying to look a bit into Truffle and was wondering whether there is some documentation. Is there perhaps an overview or a getting started guide somewhere? > > While I found the com.oracle.truffle.* packages in the Graal repository, I didn't see it mentioned anywhere else. Specifically, I was looking for the first steps of setting it up and perhaps a working example. I found the wiki page for Graal itself [1], but didn't see anything about Truffle specifically. > > Furthermore, what are the current requirements for using Truffle? Do I need a Graal VM or can it be used independently of Graal, i.e., on a vanilla JDK? > > Thanks > Stefan > > [1] https://wikis.oracle.com/display/OpenJDK/Graal > > > > -- > Stefan Marr > Software Languages Lab > Vrije Universiteit Brussel > Pleinlaan 2 / B-1050 Brussels / Belgium > http://soft.vub.ac.be/~smarr > Phone: +32 2 629 2974 > Fax: +32 2 629 3525 > From doug.simon at oracle.com Sat Mar 30 18:00:18 2013 From: doug.simon at oracle.com (doug.simon at oracle.com) Date: Sun, 31 Mar 2013 01:00:18 +0000 Subject: hg: graal/graal: 135 new changesets Message-ID: <20130331010754.1B1BD484DF@hg.openjdk.java.net> Changeset: b27261747964 Author: Roland Schatz Date: 2013-03-25 15:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b27261747964 mx: merge provider configuration files in distribution jars ! mxtool/mx.py Changeset: 5d0296347367 Author: Roland Schatz Date: 2013-03-25 15:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5d0296347367 Use ServiceLoader to make installation of MethodSubstitutions extensible. ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java + graal/com.oracle.graal.replacements/src/META-INF/services/com.oracle.graal.replacements.ReplacementsProvider ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalMethodSubstitutions.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsProvider.java Changeset: 3393f870e6a4 Author: Gilles Duboscq Date: 2013-03-25 11:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3393f870e6a4 Allow vm arguments in mx bench ! mx/commands.py Changeset: a607682f7ba6 Author: Gilles Duboscq Date: 2013-03-25 11:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a607682f7ba6 mx.sh should select python2.7 python2 or python depending on what is available. Originaly contributed by Matthias Grimmer ! mxtool/mx Changeset: 6a8ad083746e Author: Gilles Duboscq Date: 2013-03-25 14:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6a8ad083746e The exception edge for invokes should still be a DispatchBeginNode to allow lowering of ExceptionObjectNode after guard lowering ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Changeset: 149dee7367e0 Author: Gilles Duboscq Date: 2013-03-25 15:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/149dee7367e0 Bailout from OSR compilation when there is more than on EntryMarkerNode ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java Changeset: b2161263e9f2 Author: Gilles Duboscq Date: 2013-03-25 19:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b2161263e9f2 Cleanup unit tests : they should not print to stdout/stderr ! graal/com.oracle.graal.api.meta.test/src/com/oracle/graal/api/meta/test/TestMetaAccessProvider.java ! graal/com.oracle.graal.api.test/src/com/oracle/graal/api/test/GraalAPITest.java ! graal/com.oracle.graal.compiler.ptx.test/src/com/oracle/graal/compiler/ptx/test/BasicPTXTest.java ! graal/com.oracle.graal.compiler.ptx/src/com/oracle/graal/compiler/ptx/PTXBackend.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/except/Except_Locals.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotpath/HP_life.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/hotspot/Test6823354.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/Thread_setName.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/optimize/NCE_FlowSensitive05.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/optimize/TypeCastElem.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MonitorTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/AbstractTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/AddTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/ComparisonTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/DivTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/LoopPrintTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/LoopTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/MulTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/SubTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/SumTest.java ! graal/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/TernaryTest.java ! graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SimpleLanguage.java Changeset: 68b04162180e Author: Doug Simon Date: 2013-03-25 10:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/68b04162180e made node intrinsic interpretable: SystemSubstitutions.callLong() ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java Changeset: a7d3f7b5b462 Author: Doug Simon Date: 2013-03-25 17:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a7d3f7b5b462 re-enabled Full Debug Symbols builds of the Graal VM ! make/Makefile Changeset: c7a2a937233f Author: Doug Simon Date: 2013-03-25 22:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c7a2a937233f added @Alias annotation for accessing fields and methods otherwise inaccessible due to Java access rules + graal/com.oracle.graal.api.replacements/src/com/oracle/graal/api/replacements/Alias.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/AliasResolutionPhase.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: eb0282efad36 Author: Doug Simon Date: 2013-03-25 22:37 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/eb0282efad36 rewrote Thread.isInterrupted() substitution to use @Alias mechanism ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java Changeset: 95e21e035363 Author: Doug Simon Date: 2013-03-25 22:38 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/95e21e035363 Merge. Changeset: 718c0304ffeb Author: Gilles Duboscq Date: 2013-03-26 12:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/718c0304ffeb Fix for polymorphic inlining after fusing exception obecjt and the distaptch begin ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Changeset: f9aee27a6ff0 Author: Doug Simon Date: 2013-03-26 11:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f9aee27a6ff0 removed use of @Alias in Thread.isInterrupted() substitution ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java Changeset: 809819548c05 Author: Doug Simon Date: 2013-03-26 11:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/809819548c05 prevent @Alias from being used in method substitutions - can only be used in lowering snippets ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: f71fec3fadae Author: Doug Simon Date: 2013-03-26 12:01 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f71fec3fadae made method substitutions for Thread be interpretable ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ThreadIsInterruptedStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java Changeset: bceb163c0116 Author: Doug Simon Date: 2013-03-26 12:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bceb163c0116 test that method substitutions for Thread are interpretable ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java Changeset: 7a9cb4448968 Author: Doug Simon Date: 2013-03-26 12:42 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7a9cb4448968 rename: HotSpotCurrentRawThreadNode -> CurrentJavaThreadNode + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotCurrentRawThreadNode.java Changeset: 7919bd029d12 Author: Doug Simon Date: 2013-03-26 12:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7919bd029d12 removed use of CurrentThread from Thread method substitutions ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ThreadSubstitutions.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java Changeset: 4316ad0fa3ee Author: Doug Simon Date: 2013-03-26 12:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4316ad0fa3ee removed unused CurrentThread class - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java Changeset: abf5a4554bae Author: Doug Simon Date: 2013-03-26 12:48 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/abf5a4554bae made CurrentJavaThreadNode.get() interpretable ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java Changeset: e9dad49ce336 Author: Doug Simon Date: 2013-03-26 12:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e9dad49ce336 made method substitutions for System be interpretable ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/IdentityHashCodeStubCall.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BranchProbabilityNode.java Changeset: a6ba61be2b5f Author: Doug Simon Date: 2013-03-26 12:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a6ba61be2b5f made method substitutions for Object be interpretable ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java Changeset: 7abc6865bdc6 Author: Doug Simon Date: 2013-03-26 13:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7abc6865bdc6 made method substitutions for Class be interpretable ! graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionTest.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java Changeset: 92571f3eeeeb Author: Doug Simon Date: 2013-03-26 14:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/92571f3eeeeb made VM independent method substitutions be interpretable ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java ! graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/MethodSubstitutionTest.java + graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/StandardMethodSubstitutionsTest.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/MathSubstitutionsX86.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java Changeset: 5d102046a730 Author: Doug Simon Date: 2013-03-26 14:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5d102046a730 Merge. Changeset: f90b8e5d8e61 Author: Doug Simon Date: 2013-03-26 14:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f90b8e5d8e61 removed @Alias mechanism - graal/com.oracle.graal.api.replacements/src/com/oracle/graal/api/replacements/Alias.java - graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/AliasResolutionPhase.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: 1d6adefaea93 Author: Doug Simon Date: 2013-03-26 15:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1d6adefaea93 (re)disabled frame state cleanup for method substitutions ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Changeset: ba0458c143bb Author: Doug Simon Date: 2013-03-26 16:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ba0458c143bb finalizer registration is now done via method substitution (again) ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectSubstitutions.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/BciBlockMapping.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java Changeset: 391df429b4a0 Author: Doug Simon Date: 2013-03-26 17:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/391df429b4a0 documentation correction ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java Changeset: 8e022657ca0b Author: Doug Simon Date: 2013-03-26 17:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8e022657ca0b support for constructors corresponding to node intrinsics to take a leading MetaAccessProvider argument that is automatically filled in during node intrinsification ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Changeset: 225c984588ee Author: Christos Kotselidis Date: 2013-02-19 16:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/225c984588ee -Snippetization of CMS write barriers ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.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/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 92d21814cf7b Author: Christos Kotselidis Date: 2013-02-19 17:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/92d21814cf7b -Implement WB primitive stub call for G1's slow path later ! 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/WriteBarrierStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.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: 1567c6cc6561 Author: Christos Kotselidis Date: 2013-02-20 16:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1567c6cc6561 Towards porting G1 WBs ! 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/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPostStubCall.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPreStubCall.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/WriteBarrierSnippets.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: 9cf5e381df05 Author: Christos Kotselidis Date: 2013-02-20 17:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9cf5e381df05 -More Porting ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java Changeset: 286a49d423c9 Author: Christos Kotselidis Date: 2013-02-25 11:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/286a49d423c9 -Snippetization of CMS WriteBarriers ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.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/WriteBarrierSnippets.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadArrayElementAddressNode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/share/vm/graal/graalRuntime.cpp Changeset: 9412b1915547 Author: Christos Kotselidis Date: 2013-02-26 18:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9412b1915547 -More G1 WB Integration-Addition of GenerateLEANode for G1 previous value equalities ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/GenerateLEANode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/share/vm/gc_implementation/g1/g1AllocRegion.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/memory/universe.cpp ! src/share/vm/runtime/arguments.cpp Changeset: 7c9dbc80fd7d Author: Christos Kotselidis Date: 2013-02-26 19:49 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7c9dbc80fd7d -Add more instrumentation ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java Changeset: 9131c075be7b Author: Christos Kotselidis Date: 2013-02-27 15:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9131c075be7b -More porting to G1 WBs ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.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/WriteBarrierPostStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp Changeset: b089cde44076 Author: Christos Kotselidis Date: 2013-02-27 17:25 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b089cde44076 -More porting and bug fixes ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/cpu/x86/vm/graalRuntime_x86.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp Changeset: 96ccefe5ab4e Author: Christos Kotselidis Date: 2013-02-27 18:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/96ccefe5ab4e -Integrate Lucas' patch with byte read ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/cpu/x86/vm/graalRuntime_x86.cpp Changeset: c158d128fae9 Author: Christos Kotselidis Date: 2013-02-28 17:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c158d128fae9 -More porting and bug fixing ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java Changeset: 96a337d307bd Author: Christos Kotselidis Date: 2013-03-04 16:46 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/96a337d307bd -More progress in G1 WBs ! 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/InitializeArrayNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/InitializeObjectNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/cpu/x86/vm/graalRuntime_x86.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp ! src/share/vm/memory/cardTableModRefBS.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/utilities/debug.hpp Changeset: 992f62c457b0 Author: Christos Kotselidis Date: 2013-03-05 18:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/992f62c457b0 -More bug fixes + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VerOopStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/NewObjectSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/utilities/debug.hpp Changeset: 41fc46da946a Author: Christos Kotselidis Date: 2013-03-06 19:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/41fc46da946a -More fixes and passrate(fop) ! 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/InitializeObjectNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPostStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPreStubCall.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/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! mx/sanitycheck.py ! src/share/vm/code/nmethod.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/memory/universe.cpp Changeset: ff4fa8b0516e Author: Christos Kotselidis Date: 2013-03-20 20:13 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ff4fa8b0516e -Create push patch ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.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/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.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/WriteBarrierSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IterativeConditionalEliminationPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/PostOrderNodeIterator.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java ! src/cpu/x86/vm/graalRuntime_x86.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp ! src/share/vm/memory/threadLocalAllocBuffer.cpp Changeset: 58385e7565ff Author: Christos Kotselidis Date: 2013-03-20 20:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/58385e7565ff -Create push patch + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FixedValueAnchorNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VerOopStubCall.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadArrayElementAddressNode.java Changeset: 86b4965f0c9a Author: Christos Kotselidis Date: 2013-03-20 21:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/86b4965f0c9a -Cleanup code ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.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/InitializeObjectNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.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/snippets/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IterativeConditionalEliminationPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/PostOrderNodeIterator.java ! graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/gc_implementation/g1/g1AllocRegion.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp ! src/share/vm/gc_interface/collectedHeap.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp ! src/share/vm/memory/cardTableModRefBS.hpp ! src/share/vm/memory/threadLocalAllocBuffer.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/utilities/debug.hpp Changeset: dee7c8b578c7 Author: Christos Kotselidis Date: 2013-03-21 11:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/dee7c8b578c7 -Integration of WB Serial Snippets-Integration of G1 WB Snippets (partially working)-Fix allocation bug with -XX:-UseTLAB and -XX:+UseSerialGC ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! mx/sanitycheck.py ! src/share/vm/gc_implementation/g1/g1AllocRegion.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp Changeset: c3657d00e343 Author: Christos Kotselidis Date: 2013-03-21 14:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c3657d00e343 -Merge with tip - agent/make/bugspot.bat - agent/src/share/classes/sun/jvm/hotspot/asm/amd64/AMD64FloatRegister.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpot.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/JavaLineNumberInfo.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PCFinder.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/PackageScanner.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/RegisterPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTraceEntry.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/StackTracePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/ThreadListPanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/VariablePanel.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/AddressTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/DoubleTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/EnumTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FieldTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/FloatTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/LongTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/bugspot/tree/ObjectTreeNodeAdapter.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/BreakpointEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CIntegerAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/CStringAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/Event.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ExceptionEvent.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/JNIHandleAccessor.java - agent/src/share/classes/sun/jvm/hotspot/livejvm/ServiceabilityAgentJVMDIModule.java - agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java - agent/src/share/classes/sun/jvm/hotspot/tools/PermStat.java - agent/src/share/native/jvmdi/sa.cpp - agent/src/share/native/jvmdi/sa.dsp - agent/src/share/native/jvmdi/sa.dsw - agent/src/share/native/jvmdi/sa.hpp - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/Address.java - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeInfo.java - graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64DeoptimizationStub.java - graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CompiledMethodTest.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.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/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotCodeInfo.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/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/RegisterNode.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/NewInstanceStub.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/AMD64Code.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/GenerateLEANode.java - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertUnreachedToGuardPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IterativeConditionalEliminationPhase.java - graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoopSafepointInsertionPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/PostOrderNodeIterator.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/GuardCheck.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationGuard.java - graal/com.oracle.truffle.api.codegen/src/com/oracle/truffle/api/codegen/SpecializationThrows.java - graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/ConditionalNode.java - make/bsd/makefiles/wb.make - make/linux/makefiles/wb.make - make/solaris/makefiles/kernel.make - make/solaris/makefiles/wb.make - make/windows/makefiles/wb.make ! mx/commands.py ! mx/sanitycheck.py ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/cpu/x86/vm/graalRuntime_x86.cpp - src/share/tools/whitebox/sun/hotspot/WhiteBox.java - src/share/tools/whitebox/sun/hotspot/parser/DiagnosticCommand.java ! src/share/vm/code/nmethod.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/graal/graalCompilerToVM.cpp ! src/share/vm/graal/graalRuntime.cpp ! src/share/vm/graal/graalRuntime.hpp - src/share/vm/graal/graalVmIds.cpp - src/share/vm/graal/graalVmIds.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/utilities/debug.hpp - src/share/vm/utilities/machineCodePrinter.cpp - src/share/vm/utilities/machineCodePrinter.hpp - test/runtime/7158988/TestFieldMonitor.sh Changeset: c92949b1ec8a Author: Christos Kotselidis Date: 2013-03-22 12:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c92949b1ec8a -Changes after CR-243 ! 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/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPostStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPreStubCall.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ComputeAddressNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/GenerateLEANode.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/phases/WordTypeRewriterPhase.java ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/runtime/arguments.cpp Changeset: ef97193256d0 Author: Christos Kotselidis Date: 2013-03-22 12:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ef97193256d0 -Merge with trunk ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotSnippetInstaller.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/InitializeObjectNode.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java < graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/WriteBarrierSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/AESCryptSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopyNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ArrayCopySnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CheckCastSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/CipherBlockChainingSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ClassSubstitutions.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/InstanceOfSnippets.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/snippets/ObjectCloneNode.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectCloneSnippets.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ObjectSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/SystemSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/ThreadSubstitutions.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/snippets/TypeCheckSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/NewInstanceStub.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java + graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalIntrinsics.java - graal/com.oracle.graal.snippets.amd64/src/com/oracle/graal/snippets/amd64/AMD64ConvertSnippets.java - graal/com.oracle.graal.snippets.test/overview.html - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/CheckCastTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfDynamicTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InstanceOfTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/IntrinsificationTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/InvokeTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/MonitorTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewInstanceTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/NewMultiArrayTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/PointerTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/TypeCheckTest.java - graal/com.oracle.graal.snippets.test/src/com/oracle/graal/snippets/WordTest.java - graal/com.oracle.graal.snippets/overview.html - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/ClassSubstitution.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/DoubleSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/FloatSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/GraalIntrinsics.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/InstanceOfSnippetsTemplates.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/IntegerSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/JavacBug.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Log.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/LongSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/MathSubstitutionsX86.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/NodeClassSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/Snippet.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetCounter.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetFrameStateCleanupPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetInstaller.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetIntrinsificationVerificationPhase.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetProvider.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetTemplate.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/SnippetsInterface.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsafeSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/UnsignedMathSubstitutions.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitCountNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanForwardNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BitScanReverseNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/BranchProbabilityNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectObjectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectReadNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/DirectStoreNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ExplodeLoopNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/LoadSnippetVarargParameterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MacroNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/MathIntrinsicNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReadRegisterNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/ReverseBytesNode.java - graal/com.oracle.graal.snippets/src/com/oracle/graal/snippets/nodes/WriteRegisterNode.java ! src/share/vm/graal/graalRuntime.hpp Changeset: 83fde86ae759 Author: Christos Kotselidis Date: 2013-03-22 12:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/83fde86ae759 -Merge with basic-graal-gate ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalMethodSubstitutions.java < graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalIntrinsics.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! mx/commands.py ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 373d7774a14d Author: Christos Kotselidis Date: 2013-03-22 16:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/373d7774a14d -Merge ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! mx/commands.py Changeset: 9a02c9090044 Author: Christos Kotselidis Date: 2013-03-22 18:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9a02c9090044 -Merge Changeset: eec549272eef Author: Christos Kotselidis Date: 2013-03-22 18:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/eec549272eef -Merge ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: c36e8ded27d4 Author: Christos Kotselidis Date: 2013-03-22 23:44 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c36e8ded27d4 -Merge - graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/HotSpotMethodSubstitutionsTest.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java - graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/StandardMethodSubstitutionsTest.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 32e57c4e0e9d Author: Christos Kotselidis Date: 2013-03-25 16:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/32e57c4e0e9d -Fix compilation error ! src/share/vm/graal/graalRuntime.hpp Changeset: 6ed17512f672 Author: Christos Kotselidis Date: 2013-03-25 16:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6ed17512f672 -Merge ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalMethodSubstitutions.java ! mx/commands.py Changeset: c1385bb5851b Author: Christos Kotselidis Date: 2013-03-25 21:02 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c1385bb5851b Replace Pointer accesses with Word ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Changeset: 79cc35a1c2e7 Author: Christos Kotselidis Date: 2013-03-25 22:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/79cc35a1c2e7 -Merge ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ComputeAddressNode.java Changeset: 4a79f7c0d1a4 Author: Christos Kotselidis Date: 2013-03-26 10:50 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4a79f7c0d1a4 -Fix assertion errors ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: c91917e43c98 Author: Christos Kotselidis Date: 2013-03-26 10:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c91917e43c98 -Merge ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemSubstitutions.java Changeset: 450abf358987 Author: Christos Kotselidis Date: 2013-03-26 12:08 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/450abf358987 -Bug fix in card marking ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Changeset: 6aa080855d7c Author: Christos Kotselidis Date: 2013-03-26 18:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6aa080855d7c -Bug fixes ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Changeset: cc433555c5a3 Author: Christos Kotselidis Date: 2013-03-26 18:32 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/cc433555c5a3 -Merge - graal/com.oracle.graal.api.replacements/src/com/oracle/graal/api/replacements/Alias.java ! graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotRuntime.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentThread.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotCurrentRawThreadNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java - graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/AliasResolutionPhase.java ! graal/com.oracle.graal.word/src/com/oracle/graal/word/Word.java Changeset: ebf95eed9eef Author: Christos Kotselidis Date: 2013-03-27 14:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ebf95eed9eef -ArrayCopy WB Intrinsics ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java Changeset: ecb2446232ac Author: Gilles Duboscq Date: 2013-03-27 11:51 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ecb2446232ac Safer bailout for JSR+OSR ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/phases/OnStackReplacementPhase.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Changeset: 54f0a88e4523 Author: Gilles Duboscq Date: 2013-03-27 11:53 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/54f0a88e4523 Be a little bit more careful around compilation task queuing ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java Changeset: 3a105dec912f Author: Gilles Duboscq Date: 2013-03-27 14:20 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3a105dec912f Respect the PrintCodeCacheOnCompilation flag in the graal compiler ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 8a526d8b4604 Author: Gilles Duboscq Date: 2013-03-27 14:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8a526d8b4604 Always clear 'queued for compilation' flag at the end of a compilation task ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.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 ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalCompilerToVM.cpp Changeset: 67f19ede4891 Author: Roland Schatz Date: 2013-03-27 15:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/67f19ede4891 mx: Use correct working directory in eclipse builders. ! mxtool/mx.py Changeset: dc9cfb7ec5d0 Author: Roland Schatz Date: 2013-03-27 15:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/dc9cfb7ec5d0 Annotation processor for generating META-INF/services files. + graal/com.oracle.graal.api.runtime/src/com/oracle/graal/api/runtime/ServiceProvider.java + graal/com.oracle.graal.service.processor/src/META-INF/services/javax.annotation.processing.Processor + graal/com.oracle.graal.service.processor/src/com/oracle/graal/service/processor/ServiceProviderProcessor.java ! mx/projects Changeset: bd8643cea266 Author: Roland Schatz Date: 2013-03-27 15:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bd8643cea266 Use ServiceProvider annotation for method substitutions. - graal/com.oracle.graal.replacements/src/META-INF/services/com.oracle.graal.replacements.ReplacementsProvider ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/GraalMethodSubstitutions.java ! make/build-graal.xml ! mx/projects Changeset: 0d91be9af2bc Author: Christos Kotselidis Date: 2013-03-27 17:03 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0d91be9af2bc Write Barrier refactoring ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPost.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPre.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Changeset: 1f958e760261 Author: Christos Kotselidis Date: 2013-03-27 17:16 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1f958e760261 -Merge - graal/com.oracle.graal.replacements/src/META-INF/services/com.oracle.graal.replacements.ReplacementsProvider Changeset: 9daff929be65 Author: Christos Kotselidis Date: 2013-03-27 17:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9daff929be65 -Fix annotation errors ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java Changeset: 4f33d1871dca Author: Bernhard Urban Date: 2013-03-27 14:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4f33d1871dca pipeline: canonicalize after ConditionalElimination and EliminatePartiallyRedundantGuards ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java Changeset: 3cf7d22b14dd Author: Bernhard Urban Date: 2013-03-27 22:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/3cf7d22b14dd CheckCastSnippets: testcase for reading a field after checkcast ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/GraphScheduleTest.java + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ReadAfterCheckCast.java Changeset: 2978a819763b Author: Bernhard Urban Date: 2013-03-27 19:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/2978a819763b CheckCastSnippets: anchor UnsafeCast with subclass tests ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ReadAfterCheckCast.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CheckCastSnippets.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java Changeset: da674936800c Author: Bernhard Urban Date: 2013-03-27 18:12 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/da674936800c InvokeNode: remove dead code in intrinsify it was actually used in a test case, but that can be replaced by inlining ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/DegeneratedLoopsTest.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java Changeset: 59dab34ba44a Author: Christos Kotselidis Date: 2013-03-28 14:26 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/59dab34ba44a Bug fix crashing SpecJVM2008 ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java Changeset: 04b002b7077f Author: Christos Kotselidis Date: 2013-03-28 14:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/04b002b7077f -Merge Changeset: b587343ed184 Author: Christos Kotselidis Date: 2013-03-28 14:30 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b587343ed184 Remove Unnecessary cast ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java Changeset: 88610e3ca236 Author: Bernhard Urban Date: 2013-03-28 14:14 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/88610e3ca236 HotSpotRuntime: remove duplicated code in lowering of Invoke ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java Changeset: 30a141944bcb Author: Lukas Stadler Date: 2013-03-27 14:27 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/30a141944bcb tail recursion for SchedulePhase.addToEarliestSorting (fixes StackOverflowErrors) ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java Changeset: 354d729ae588 Author: Lukas Stadler Date: 2013-03-21 13:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/354d729ae588 remove SafeAccessNode ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeAccessNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeReadNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeWriteNode.java Changeset: 064e9f64fe52 Author: Lukas Stadler Date: 2013-03-27 14:36 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/064e9f64fe52 fix for state duplication in ReentrantBlockIterator ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/ReentrantBlockIterator.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: e5da6c59d7c9 Author: Lukas Stadler Date: 2013-03-27 14:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/e5da6c59d7c9 fix import ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java Changeset: f94baf373bcf Author: Lukas Stadler Date: 2013-03-21 13:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f94baf373bcf add increment size to DynamicCounterNode ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java Changeset: ca29d921a53a Author: Lukas Stadler Date: 2013-03-25 11:09 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ca29d921a53a GraalOptions.BenchmarkDynamicCounters to get counters for dacapo/specjvm2008 run ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/SurvivingCounterNode.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: 51d5999900e2 Author: Lukas Stadler Date: 2013-03-07 13:47 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/51d5999900e2 simple iterative inlining, simple read elimination in PEA ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningPhase.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/EffectList.java + graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/IterativeInliningPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeAnalysisPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: 4ff30dbbc826 Author: Lukas Stadler Date: 2013-03-07 14:45 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4ff30dbbc826 new PEAInliningHints option, turn new options off by default ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/IterativeInliningPhase.java Changeset: 53cc1dd7ee18 Author: Lukas Stadler Date: 2013-03-11 15:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/53cc1dd7ee18 pull replaceSnippetInvokes into MacroNode ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java Changeset: 0f6dd67470d9 Author: Lukas Stadler Date: 2013-03-11 18:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0f6dd67470d9 location identity on PhiNodes and ProxyNodes ! graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java ! graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragment.java ! graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragmentInside.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/EliminatePartiallyRedundantGuardsPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FloatingReadPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ReadEliminationPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: 31b7a648b4b3 Author: Lukas Stadler Date: 2013-03-25 11:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/31b7a648b4b3 turn inlining hints into a map ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/BoxingEliminationTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/IfBoxingEliminationTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/InvokeExceptionTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/InvokeHintsTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/MonitorGraphTest.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: ed38b01ce7bc Author: Lukas Stadler Date: 2013-03-25 11:15 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ed38b01ce7bc changes to iterative inlining + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ea/IterativeInliningTest.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/IterativeInliningPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeAnalysisPhase.java Changeset: 676a85b65481 Author: Lukas Stadler Date: 2013-03-25 11:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/676a85b65481 allow Graal options to be passed to "mx bench" ! mx/commands.py Changeset: 85d5fd3724ef Author: Lukas Stadler Date: 2013-03-25 11:18 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/85d5fd3724ef assertion in Node ! graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java Changeset: c69b29285ff8 Author: Lukas Stadler Date: 2013-03-25 11:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c69b29285ff8 better read elimination + graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ea/PEAReadEliminationTest.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/GraphEffectList.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeAnalysisPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: ca3a5c5d3947 Author: Lukas Stadler Date: 2013-03-25 11:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ca3a5c5d3947 enable test ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ea/IterativeInliningTest.java Changeset: 43ab11ee5524 Author: Lukas Stadler Date: 2013-03-26 11:28 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/43ab11ee5524 counters for LoopFullUnrollPhase and TailDuplicationPhase ! graal/com.oracle.graal.loop/src/com/oracle/graal/loop/phases/LoopFullUnrollPhase.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java Changeset: af0c1352f969 Author: Lukas Stadler Date: 2013-03-28 15:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/af0c1352f969 more work on read elimination ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ea/EscapeAnalysisTest.java ! graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/ea/PEAReadEliminationTest.java ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/IterativeInliningPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeAnalysisPhase.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Changeset: 8cb3984da2f8 Author: Lukas Stadler Date: 2013-03-28 16:00 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/8cb3984da2f8 Merge ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.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/ArrayWriteBarrier.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java - graal/com.oracle.graal.replacements/src/META-INF/services/com.oracle.graal.replacements.ReplacementsProvider Changeset: 147db03bb0a5 Author: Roland Schatz Date: 2013-03-28 11:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/147db03bb0a5 Ignore temporary *.jar.* files. ! .hgignore Changeset: fc0d57b82c86 Author: Roland Schatz Date: 2013-03-28 15:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/fc0d57b82c86 Propagate fillContents to allocateArrayAndInitialize snippet. ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java Changeset: a1a97de0dc9d Author: Roland Schatz Date: 2013-03-28 16:35 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/a1a97de0dc9d Merge. - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeAccessNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeReadNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeWriteNode.java Changeset: bbd8167f21f9 Author: Matthias Grimmer Date: 2013-03-28 16:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/bbd8167f21f9 Added executeHelper to HotSpotInstalled code that gets replaced by a MethodSubstitution ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedJavaMethod.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotSnippetUtils.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java + graal/com.oracle.graal.rawnativecall.test/test/com/oracle/graal/rawnativecall/test/InstalledCodeExecuteHelperTest.java + graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/nodes/HotSpotInstalledCodeExecuteNode.java + graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeIntrinsics.java + graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeSubstitutions.java ! make/build-graal.xml ! mx/projects Changeset: 0d0b1154438f Author: Matthias Grimmer Date: 2013-03-28 16:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0d0b1154438f Merge - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeAccessNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeReadNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeWriteNode.java ! graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java Changeset: df2e756f9f56 Author: Andreas Woess Date: 2013-03-28 14:29 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/df2e756f9f56 Increase template interpreter size by another 4K. ! src/cpu/x86/vm/templateInterpreter_x86.hpp Changeset: 645f216a00c4 Author: Andreas Woess Date: 2013-03-28 14:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/645f216a00c4 Minor bug fix in Truffle frame implementation. ! graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultVirtualFrame.java Changeset: 9323ff2fbd11 Author: Christos Kotselidis Date: 2013-03-28 23:40 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/9323ff2fbd11 Reverse ArrayCopy WB intrisification ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java Changeset: 59eb5a38df56 Author: Christos Kotselidis Date: 2013-03-28 23:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/59eb5a38df56 -Merge - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeAccessNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeReadNode.java - graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/SafeWriteNode.java Changeset: 1c181c2cfb68 Author: Christos Kotselidis Date: 2013-03-28 23:57 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/1c181c2cfb68 Reverse ArrayCopy WB Intrisification ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java Changeset: 0bacc5564d18 Author: Christos Kotselidis Date: 2013-03-29 03:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/0bacc5564d18 Revert WB refactoring ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ArrayWriteBarrier.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/FieldWriteBarrier.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPost.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPre.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPre.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopySnippets.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Changeset: c324983e5d28 Author: Christos Kotselidis Date: 2013-03-29 03:11 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/c324983e5d28 Revert WB refactoring 2 ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/WriteBarrierPost.java Changeset: 7f5d99d3346d Author: Thomas Wuerthinger Date: 2013-03-29 14:47 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/7f5d99d3346d Remove printStackTrace in various locations. ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/ConvertJTT.java ! graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/reflect/Field_get03.java ! graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/EffectList.java Changeset: b82ffd0c4ed2 Author: Thomas Wuerthinger Date: 2013-03-29 16:56 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b82ffd0c4ed2 Improved error message for Graal API capability queries. ! graal/com.oracle.graal.api.runtime/src/com/oracle/graal/api/runtime/Graal.java Changeset: ea3ae49a7fa3 Author: Mick Jordan Date: 2013-03-28 21:01 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/ea3ae49a7fa3 NodeIntrinsifcationPhase: allow non-static @Fold methods ! graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Changeset: 916a1f1a96f0 Author: Mick Jordan Date: 2013-03-29 09:39 -0700 URL: http://hg.openjdk.java.net/graal/graal/rev/916a1f1a96f0 Merge Changeset: 6388d983385a Author: Matthias Grimmer Date: 2013-03-29 09:58 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6388d983385a Renamings of installed code replacements - graal/com.oracle.graal.rawnativecall.test/test/com/oracle/graal/rawnativecall/test/InstalledCodeExecuteHelperTest.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/nodes/HotSpotInstalledCodeExecuteNode.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeIntrinsics.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeSubstitutions.java + graal/com.oracle.graal.replacements.installedcode.test/test/com/oracle/graal/replacements/installedcode/test/InstalledCodeExecuteHelperTest.java + graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/HotSpotInstalledCodeIntrinsics.java + graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/HotSpotInstalledCodeSubstitutions.java + graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/nodes/HotSpotInstalledCodeExecuteNode.java ! mx/projects Changeset: f29c17fa7d96 Author: Matthias Grimmer Date: 2013-03-29 09:59 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/f29c17fa7d96 Merge - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPost.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1WriteBarrierPre.java - graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrierPost.java Changeset: 847cd24fc4cf Author: Matthias Grimmer Date: 2013-03-29 10:04 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/847cd24fc4cf minor thing in build-graal.xml ! make/build-graal.xml Changeset: 4bd7971c0630 Author: Matthias Grimmer Date: 2013-03-29 17:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/4bd7971c0630 Add code for interpreter to executeHelper ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotInstalledCode.java Changeset: dd3c52b31c3d Author: Matthias Grimmer Date: 2013-03-29 17:41 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/dd3c52b31c3d Merge Changeset: 6a5a980714d4 Author: Matthias Grimmer Date: 2013-03-29 18:06 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6a5a980714d4 Move code of InstalledCode substitution to graal.hotspot + graal/com.oracle.graal.hotspot.test/src/com/oracle/graal/hotspot/InstalledCodeExecuteHelperTest.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotInstalledCodeExecuteNode.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotInstalledCodeIntrinsics.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotInstalledCodeSubstitutions.java - graal/com.oracle.graal.replacements.installedcode.test/test/com/oracle/graal/replacements/installedcode/test/InstalledCodeExecuteHelperTest.java - graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/HotSpotInstalledCodeIntrinsics.java - graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/HotSpotInstalledCodeSubstitutions.java - graal/com.oracle.graal.replacements.installedcode/src/com/oracle/graal/replacements/installedcode/nodes/HotSpotInstalledCodeExecuteNode.java ! make/build-graal.xml ! mx/projects Changeset: 142fe2016d0b Author: Matthias Grimmer Date: 2013-03-29 18:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/142fe2016d0b Add annotation processor to graal.hotspot; make sure that executeHelper gets replaced ! mx/projects Changeset: 77970b4f131c Author: Matthias Grimmer Date: 2013-03-29 18:21 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/77970b4f131c Merge Changeset: aaf3988bd1b4 Author: Doug Simon Date: 2013-03-29 12:22 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/aaf3988bd1b4 made 'mx archive' clean up temporary files upon failure during archive file creation ! mxtool/mx.py Changeset: 82f6a25321b8 Author: Doug Simon Date: 2013-03-29 12:31 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/82f6a25321b8 modeling of lock state removed from LIR and runtime specific debug info for locks moved into runtime specific classes ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.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/AMD64HotSpotLIRGenerator.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotDebugInfoBuilder.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotLIRGenerator.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotLockStack.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorExitStubCall.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MonitorSnippets.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/FrameStateBuilder.java ! graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java + graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MonitorReference.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Changeset: 6b5b9673de9f Author: Doug Simon Date: 2013-03-29 12:33 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/6b5b9673de9f removed no longer necessary method: CodeCacheProvider.getSizeOfLockData() ! graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/CodeCacheProvider.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotRuntime.java Changeset: b5eff8bd82da Author: Doug Simon Date: 2013-03-29 12:54 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/b5eff8bd82da added HotSpotLIRFrameState subclass of LIRFrameState to move HotSpot specific handling of lock state into HotSpot specific classes ! graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotDebugInfoBuilder.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotLIRFrameState.java ! graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRFrameState.java Changeset: ec06c7e67698 Author: Doug Simon Date: 2013-03-29 14:19 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/ec06c7e67698 renamed MonitorValue to HotSpotMonitorValue and moved it to com.oracle.graal.hotspot project - graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/MonitorValue.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotDebugInfoBuilder.java ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotLIRFrameState.java + graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMonitorValue.java ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/graal/graalCodeInstaller.cpp ! src/share/vm/graal/graalJavaAccess.hpp Changeset: 480c564d90ef Author: Doug Simon Date: 2013-03-29 21:05 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/480c564d90ef fixed bug in computation of nested lock depth ! graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotDebugInfoBuilder.java ! graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FrameState.java ! graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Changeset: 5c58da5b8233 Author: Doug Simon Date: 2013-03-29 21:39 +0100 URL: http://hg.openjdk.java.net/graal/graal/rev/5c58da5b8233 Merge. - graal/com.oracle.graal.rawnativecall.test/test/com/oracle/graal/rawnativecall/test/InstalledCodeExecuteHelperTest.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/nodes/HotSpotInstalledCodeExecuteNode.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeIntrinsics.java - graal/com.oracle.graal.rawnativecall/src/com/oracle/graal/rawnativecall/replacements/HotSpotInstalledCodeSubstitutions.java