Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_hotspot
提交
fa4624c4
D
dragonwell8_hotspot
项目概览
openanolis
/
dragonwell8_hotspot
通知
2
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_hotspot
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
fa4624c4
编写于
10月 30, 2008
作者:
N
never
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6764622: IdealGraphVisualizer fixes
Reviewed-by: rasbold, jrose
上级
26028ad1
变更
36
隐藏空白更改
内联
并排
Showing
36 changed file
with
326 addition
and
202 deletion
+326
-202
src/share/tools/IdealGraphVisualizer/Bytecodes/src/com/sun/hotspot/igv/bytecodes/BytecodeViewTopComponent.java
...m/sun/hotspot/igv/bytecodes/BytecodeViewTopComponent.java
+6
-1
src/share/tools/IdealGraphVisualizer/ControlFlow/src/com/sun/hotspot/igv/controlflow/ControlFlowScene.java
...src/com/sun/hotspot/igv/controlflow/ControlFlowScene.java
+3
-4
src/share/tools/IdealGraphVisualizer/ControlFlow/src/com/sun/hotspot/igv/controlflow/ControlFlowTopComponent.java
.../sun/hotspot/igv/controlflow/ControlFlowTopComponent.java
+6
-1
src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/FolderNode.java
...nator/src/com/sun/hotspot/igv/coordinator/FolderNode.java
+17
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/GraphDocument.java
...izer/Data/src/com/sun/hotspot/igv/data/GraphDocument.java
+1
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Group.java
...phVisualizer/Data/src/com/sun/hotspot/igv/data/Group.java
+1
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputGraph.java
...ualizer/Data/src/com/sun/hotspot/igv/data/InputGraph.java
+13
-14
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputMethod.java
...alizer/Data/src/com/sun/hotspot/igv/data/InputMethod.java
+1
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputNode.java
...sualizer/Data/src/com/sun/hotspot/igv/data/InputNode.java
+1
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Properties.java
...ualizer/Data/src/com/sun/hotspot/igv/data/Properties.java
+98
-50
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Property.java
...isualizer/Data/src/com/sun/hotspot/igv/data/Property.java
+14
-10
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/Parser.java
...ta/src/com/sun/hotspot/igv/data/serialization/Parser.java
+25
-14
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/Printer.java
...a/src/com/sun/hotspot/igv/data/serialization/Printer.java
+1
-1
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/XMLParser.java
...src/com/sun/hotspot/igv/data/serialization/XMLParser.java
+4
-4
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/XMLWriter.java
...src/com/sun/hotspot/igv/data/serialization/XMLWriter.java
+4
-4
src/share/tools/IdealGraphVisualizer/Difference/src/com/sun/hotspot/igv/difference/Difference.java
...erence/src/com/sun/hotspot/igv/difference/Difference.java
+14
-13
src/share/tools/IdealGraphVisualizer/Filter/manifest.mf
src/share/tools/IdealGraphVisualizer/Filter/manifest.mf
+6
-6
src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/CustomFilter.java
...r/Filter/src/com/sun/hotspot/igv/filter/CustomFilter.java
+1
-2
src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/SplitFilter.java
...er/Filter/src/com/sun/hotspot/igv/filter/SplitFilter.java
+2
-2
src/share/tools/IdealGraphVisualizer/Graph/src/com/sun/hotspot/igv/graph/Diagram.java
...sualizer/Graph/src/com/sun/hotspot/igv/graph/Diagram.java
+2
-2
src/share/tools/IdealGraphVisualizer/Graph/src/com/sun/hotspot/igv/graph/Figure.java
...isualizer/Graph/src/com/sun/hotspot/igv/graph/Figure.java
+1
-1
src/share/tools/IdealGraphVisualizer/HierarchicalLayout/src/com/sun/hotspot/igv/hierarchicallayout/Graph.java
...out/src/com/sun/hotspot/igv/hierarchicallayout/Graph.java
+5
-5
src/share/tools/IdealGraphVisualizer/HierarchicalLayout/src/com/sun/hotspot/igv/hierarchicallayout/HierarchicalClusterLayoutManager.java
.../hierarchicallayout/HierarchicalClusterLayoutManager.java
+13
-13
src/share/tools/IdealGraphVisualizer/Layout/src/com/sun/hotspot/igv/layout/LayoutGraph.java
...er/Layout/src/com/sun/hotspot/igv/layout/LayoutGraph.java
+7
-7
src/share/tools/IdealGraphVisualizer/README
src/share/tools/IdealGraphVisualizer/README
+7
-12
src/share/tools/IdealGraphVisualizer/Util/src/com/sun/hotspot/igv/util/PropertiesSheet.java
...er/Util/src/com/sun/hotspot/igv/util/PropertiesSheet.java
+3
-3
src/share/tools/IdealGraphVisualizer/Util/src/com/sun/hotspot/igv/util/RangeSliderModel.java
...r/Util/src/com/sun/hotspot/igv/util/RangeSliderModel.java
+7
-1
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/DiagramScene.java
...lizer/View/src/com/sun/hotspot/igv/view/DiagramScene.java
+9
-9
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/DiagramViewModel.java
...r/View/src/com/sun/hotspot/igv/view/DiagramViewModel.java
+38
-1
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/FindPanel.java
...sualizer/View/src/com/sun/hotspot/igv/view/FindPanel.java
+1
-1
src/share/tools/IdealGraphVisualizer/nbproject/platform.properties
.../tools/IdealGraphVisualizer/nbproject/platform.properties
+6
-6
src/share/tools/IdealGraphVisualizer/nbproject/project.properties
...e/tools/IdealGraphVisualizer/nbproject/project.properties
+2
-3
src/share/vm/adlc/output_h.cpp
src/share/vm/adlc/output_h.cpp
+1
-1
src/share/vm/opto/compile.cpp
src/share/vm/opto/compile.cpp
+1
-1
src/share/vm/opto/type.cpp
src/share/vm/opto/type.cpp
+1
-1
src/share/vm/runtime/frame.cpp
src/share/vm/runtime/frame.cpp
+4
-4
未找到文件。
src/share/tools/IdealGraphVisualizer/Bytecodes/src/com/sun/hotspot/igv/bytecodes/BytecodeViewTopComponent.java
浏览文件 @
fa4624c4
...
@@ -28,6 +28,7 @@ import com.sun.hotspot.igv.data.InputGraph;
...
@@ -28,6 +28,7 @@ import com.sun.hotspot.igv.data.InputGraph;
import
com.sun.hotspot.igv.data.services.InputGraphProvider
;
import
com.sun.hotspot.igv.data.services.InputGraphProvider
;
import
java.awt.BorderLayout
;
import
java.awt.BorderLayout
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
javax.swing.SwingUtilities
;
import
org.openide.ErrorManager
;
import
org.openide.ErrorManager
;
import
org.openide.explorer.ExplorerManager
;
import
org.openide.explorer.ExplorerManager
;
import
org.openide.explorer.ExplorerUtils
;
import
org.openide.explorer.ExplorerUtils
;
...
@@ -151,14 +152,18 @@ final class BytecodeViewTopComponent extends TopComponent implements ExplorerMan
...
@@ -151,14 +152,18 @@ final class BytecodeViewTopComponent extends TopComponent implements ExplorerMan
}
}
public
void
resultChanged
(
LookupEvent
lookupEvent
)
{
public
void
resultChanged
(
LookupEvent
lookupEvent
)
{
InputGraphProvider
p
=
Lookup
.
getDefault
().
lookup
(
InputGraphProvider
.
class
);
final
InputGraphProvider
p
=
Lookup
.
getDefault
().
lookup
(
InputGraphProvider
.
class
);
if
(
p
!=
null
)
{
if
(
p
!=
null
)
{
SwingUtilities
.
invokeLater
(
new
Runnable
()
{
public
void
run
()
{
InputGraph
graph
=
p
.
getGraph
();
InputGraph
graph
=
p
.
getGraph
();
if
(
graph
!=
null
)
{
if
(
graph
!=
null
)
{
Group
g
=
graph
.
getGroup
();
Group
g
=
graph
.
getGroup
();
rootNode
.
update
(
graph
,
g
.
getMethod
());
rootNode
.
update
(
graph
,
g
.
getMethod
());
}
}
}
}
});
}
}
}
final
static
class
ResolvableHelper
implements
Serializable
{
final
static
class
ResolvableHelper
implements
Serializable
{
...
...
src/share/tools/IdealGraphVisualizer/ControlFlow/src/com/sun/hotspot/igv/controlflow/ControlFlowScene.java
浏览文件 @
fa4624c4
...
@@ -33,7 +33,7 @@ import java.awt.Point;
...
@@ -33,7 +33,7 @@ import java.awt.Point;
import
java.awt.Rectangle
;
import
java.awt.Rectangle
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.Set
;
import
java.util.Set
;
import
javax.swing.BorderFactory
;
import
javax.swing.BorderFactory
;
import
org.netbeans.api.visual.action.ActionFactory
;
import
org.netbeans.api.visual.action.ActionFactory
;
...
@@ -44,7 +44,6 @@ import org.netbeans.api.visual.action.SelectProvider;
...
@@ -44,7 +44,6 @@ import org.netbeans.api.visual.action.SelectProvider;
import
org.netbeans.api.visual.action.WidgetAction
;
import
org.netbeans.api.visual.action.WidgetAction
;
import
org.netbeans.api.visual.anchor.AnchorFactory
;
import
org.netbeans.api.visual.anchor.AnchorFactory
;
import
org.netbeans.api.visual.anchor.AnchorShape
;
import
org.netbeans.api.visual.anchor.AnchorShape
;
import
com.sun.hotspot.igv.controlflow.HierarchicalGraphLayout
;
import
org.netbeans.api.visual.layout.LayoutFactory
;
import
org.netbeans.api.visual.layout.LayoutFactory
;
import
org.netbeans.api.visual.router.RouterFactory
;
import
org.netbeans.api.visual.router.RouterFactory
;
import
org.netbeans.api.visual.widget.LayerWidget
;
import
org.netbeans.api.visual.widget.LayerWidget
;
...
@@ -61,8 +60,8 @@ import org.openide.util.Lookup;
...
@@ -61,8 +60,8 @@ import org.openide.util.Lookup;
*/
*/
public
class
ControlFlowScene
extends
GraphScene
<
InputBlock
,
InputBlockEdge
>
implements
SelectProvider
,
MoveProvider
,
RectangularSelectDecorator
,
RectangularSelectProvider
{
public
class
ControlFlowScene
extends
GraphScene
<
InputBlock
,
InputBlockEdge
>
implements
SelectProvider
,
MoveProvider
,
RectangularSelectDecorator
,
RectangularSelectProvider
{
private
Set
<
BlockWidget
>
selection
;
private
Hash
Set
<
BlockWidget
>
selection
;
private
Hash
table
<
InputBlock
,
BlockWidget
>
blockMap
;
private
Hash
Map
<
InputBlock
,
BlockWidget
>
blockMap
;
private
InputGraph
oldGraph
;
private
InputGraph
oldGraph
;
private
LayerWidget
edgeLayer
;
private
LayerWidget
edgeLayer
;
private
LayerWidget
mainLayer
;
private
LayerWidget
mainLayer
;
...
...
src/share/tools/IdealGraphVisualizer/ControlFlow/src/com/sun/hotspot/igv/controlflow/ControlFlowTopComponent.java
浏览文件 @
fa4624c4
...
@@ -28,6 +28,7 @@ import com.sun.hotspot.igv.data.services.InputGraphProvider;
...
@@ -28,6 +28,7 @@ import com.sun.hotspot.igv.data.services.InputGraphProvider;
import
java.awt.BorderLayout
;
import
java.awt.BorderLayout
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
javax.swing.JScrollPane
;
import
javax.swing.JScrollPane
;
import
javax.swing.SwingUtilities
;
import
org.openide.ErrorManager
;
import
org.openide.ErrorManager
;
import
org.openide.util.Lookup
;
import
org.openide.util.Lookup
;
import
org.openide.util.LookupEvent
;
import
org.openide.util.LookupEvent
;
...
@@ -143,13 +144,17 @@ final class ControlFlowTopComponent extends TopComponent implements LookupListen
...
@@ -143,13 +144,17 @@ final class ControlFlowTopComponent extends TopComponent implements LookupListen
public
void
resultChanged
(
LookupEvent
lookupEvent
)
{
public
void
resultChanged
(
LookupEvent
lookupEvent
)
{
InputGraphProvider
p
=
Lookup
.
getDefault
().
lookup
(
InputGraphProvider
.
class
);
final
InputGraphProvider
p
=
Lookup
.
getDefault
().
lookup
(
InputGraphProvider
.
class
);
if
(
p
!=
null
)
{
if
(
p
!=
null
)
{
SwingUtilities
.
invokeLater
(
new
Runnable
()
{
public
void
run
()
{
InputGraph
g
=
p
.
getGraph
();
InputGraph
g
=
p
.
getGraph
();
if
(
g
!=
null
)
{
if
(
g
!=
null
)
{
scene
.
setGraph
(
g
);
scene
.
setGraph
(
g
);
}
}
}
}
});
}
}
}
@Override
@Override
...
...
src/share/tools/IdealGraphVisualizer/Coordinator/src/com/sun/hotspot/igv/coordinator/FolderNode.java
浏览文件 @
fa4624c4
...
@@ -24,6 +24,7 @@
...
@@ -24,6 +24,7 @@
package
com.sun.hotspot.igv.coordinator
;
package
com.sun.hotspot.igv.coordinator
;
import
com.sun.hotspot.igv.coordinator.actions.RemoveCookie
;
import
com.sun.hotspot.igv.coordinator.actions.RemoveCookie
;
import
com.sun.hotspot.igv.data.ChangedListener
;
import
com.sun.hotspot.igv.data.Group
;
import
com.sun.hotspot.igv.data.Group
;
import
com.sun.hotspot.igv.data.services.GroupOrganizer
;
import
com.sun.hotspot.igv.data.services.GroupOrganizer
;
import
com.sun.hotspot.igv.data.InputGraph
;
import
com.sun.hotspot.igv.data.InputGraph
;
...
@@ -50,17 +51,24 @@ public class FolderNode extends AbstractNode {
...
@@ -50,17 +51,24 @@ public class FolderNode extends AbstractNode {
private
List
<
String
>
subFolders
;
private
List
<
String
>
subFolders
;
private
FolderChildren
children
;
private
FolderChildren
children
;
private
static
class
FolderChildren
extends
Children
.
Keys
{
private
static
class
FolderChildren
extends
Children
.
Keys
implements
ChangedListener
<
Group
>
{
private
FolderNode
parent
;
private
FolderNode
parent
;
private
List
<
Group
>
registeredGroups
;
public
void
setParent
(
FolderNode
parent
)
{
public
void
setParent
(
FolderNode
parent
)
{
this
.
parent
=
parent
;
this
.
parent
=
parent
;
this
.
registeredGroups
=
new
ArrayList
<
Group
>();
}
}
@Override
@Override
protected
Node
[]
createNodes
(
Object
arg0
)
{
protected
Node
[]
createNodes
(
Object
arg0
)
{
for
(
Group
g
:
registeredGroups
)
{
g
.
getChangedEvent
().
removeListener
(
this
);
}
registeredGroups
.
clear
();
Pair
<
String
,
List
<
Group
>>
p
=
(
Pair
<
String
,
List
<
Group
>>)
arg0
;
Pair
<
String
,
List
<
Group
>>
p
=
(
Pair
<
String
,
List
<
Group
>>)
arg0
;
if
(
p
.
getLeft
().
length
()
==
0
)
{
if
(
p
.
getLeft
().
length
()
==
0
)
{
...
@@ -69,6 +77,8 @@ public class FolderNode extends AbstractNode {
...
@@ -69,6 +77,8 @@ public class FolderNode extends AbstractNode {
for
(
InputGraph
graph
:
g
.
getGraphs
())
{
for
(
InputGraph
graph
:
g
.
getGraphs
())
{
curNodes
.
add
(
new
GraphNode
(
graph
));
curNodes
.
add
(
new
GraphNode
(
graph
));
}
}
g
.
getChangedEvent
().
addListener
(
this
);
registeredGroups
.
add
(
g
);
}
}
Node
[]
result
=
new
Node
[
curNodes
.
size
()];
Node
[]
result
=
new
Node
[
curNodes
.
size
()];
...
@@ -85,7 +95,13 @@ public class FolderNode extends AbstractNode {
...
@@ -85,7 +95,13 @@ public class FolderNode extends AbstractNode {
@Override
@Override
public
void
addNotify
()
{
public
void
addNotify
()
{
this
.
setKeys
(
parent
.
structure
);
this
.
setKeys
(
parent
.
structure
);
}
public
void
changed
(
Group
source
)
{
List
<
Pair
<
String
,
List
<
Group
>>>
newStructure
=
new
ArrayList
<
Pair
<
String
,
List
<
Group
>>>();
for
(
Pair
<
String
,
List
<
Group
>>
p
:
parent
.
structure
)
{
refreshKey
(
p
);
}
}
}
}
}
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/GraphDocument.java
浏览文件 @
fa4624c4
...
@@ -31,7 +31,7 @@ import java.util.List;
...
@@ -31,7 +31,7 @@ import java.util.List;
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
GraphDocument
extends
Properties
.
Object
implements
ChangedEventProvider
<
GraphDocument
>
{
public
class
GraphDocument
extends
Properties
.
Entity
implements
ChangedEventProvider
<
GraphDocument
>
{
private
List
<
Group
>
groups
;
private
List
<
Group
>
groups
;
private
ChangedEvent
<
GraphDocument
>
changedEvent
;
private
ChangedEvent
<
GraphDocument
>
changedEvent
;
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Group.java
浏览文件 @
fa4624c4
...
@@ -37,7 +37,7 @@ import java.util.Set;
...
@@ -37,7 +37,7 @@ import java.util.Set;
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
Group
extends
Properties
.
Object
implements
ChangedEventProvider
<
Group
>
{
public
class
Group
extends
Properties
.
Entity
implements
ChangedEventProvider
<
Group
>
{
private
List
<
InputGraph
>
graphs
;
private
List
<
InputGraph
>
graphs
;
private
transient
ChangedEvent
<
Group
>
changedEvent
;
private
transient
ChangedEvent
<
Group
>
changedEvent
;
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputGraph.java
浏览文件 @
fa4624c4
...
@@ -23,26 +23,25 @@
...
@@ -23,26 +23,25 @@
*/
*/
package
com.sun.hotspot.igv.data
;
package
com.sun.hotspot.igv.data
;
import
com.sun.hotspot.igv.data.Properties
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.Set
;
/**
/**
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
InputGraph
extends
Properties
.
Object
{
public
class
InputGraph
extends
Properties
.
Entity
{
private
Map
<
Integer
,
InputNode
>
nodes
;
private
Hash
Map
<
Integer
,
InputNode
>
nodes
;
private
Se
t
<
InputEdge
>
edges
;
private
ArrayLis
t
<
InputEdge
>
edges
;
private
Group
parent
;
private
Group
parent
;
private
Map
<
String
,
InputBlock
>
blocks
;
private
Hash
Map
<
String
,
InputBlock
>
blocks
;
private
Map
<
Integer
,
InputBlock
>
nodeToBlock
;
private
Hash
Map
<
Integer
,
InputBlock
>
nodeToBlock
;
private
boolean
isDifferenceGraph
;
private
boolean
isDifferenceGraph
;
public
InputGraph
(
Group
parent
)
{
public
InputGraph
(
Group
parent
)
{
...
@@ -61,10 +60,10 @@ public class InputGraph extends Properties.Object {
...
@@ -61,10 +60,10 @@ public class InputGraph extends Properties.Object {
public
InputGraph
(
Group
parent
,
InputGraph
last
,
String
name
)
{
public
InputGraph
(
Group
parent
,
InputGraph
last
,
String
name
)
{
this
.
parent
=
parent
;
this
.
parent
=
parent
;
setName
(
name
);
setName
(
name
);
nodes
=
new
Hash
table
<
Integer
,
InputNode
>();
nodes
=
new
Hash
Map
<
Integer
,
InputNode
>();
edges
=
new
HashSe
t
<
InputEdge
>();
edges
=
new
ArrayLis
t
<
InputEdge
>();
blocks
=
new
Hash
table
<
String
,
InputBlock
>();
blocks
=
new
Hash
Map
<
String
,
InputBlock
>();
nodeToBlock
=
new
Hash
table
<
Integer
,
InputBlock
>();
nodeToBlock
=
new
Hash
Map
<
Integer
,
InputBlock
>();
if
(
last
!=
null
)
{
if
(
last
!=
null
)
{
for
(
InputNode
n
:
last
.
getNodes
())
{
for
(
InputNode
n
:
last
.
getNodes
())
{
...
@@ -182,8 +181,8 @@ public class InputGraph extends Properties.Object {
...
@@ -182,8 +181,8 @@ public class InputGraph extends Properties.Object {
return
nodes
.
remove
(
index
);
return
nodes
.
remove
(
index
);
}
}
public
Set
<
InputEdge
>
getEdges
()
{
public
Collection
<
InputEdge
>
getEdges
()
{
return
Collections
.
unmodifiable
Se
t
(
edges
);
return
Collections
.
unmodifiable
Lis
t
(
edges
);
}
}
public
void
removeEdge
(
InputEdge
c
)
{
public
void
removeEdge
(
InputEdge
c
)
{
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputMethod.java
浏览文件 @
fa4624c4
...
@@ -32,7 +32,7 @@ import java.util.List;
...
@@ -32,7 +32,7 @@ import java.util.List;
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
InputMethod
extends
Properties
.
Object
{
public
class
InputMethod
extends
Properties
.
Entity
{
private
String
name
;
private
String
name
;
private
int
bci
;
private
int
bci
;
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/InputNode.java
浏览文件 @
fa4624c4
...
@@ -27,7 +27,7 @@ package com.sun.hotspot.igv.data;
...
@@ -27,7 +27,7 @@ package com.sun.hotspot.igv.data;
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
InputNode
extends
Properties
.
Object
{
public
class
InputNode
extends
Properties
.
Entity
{
private
int
id
;
private
int
id
;
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Properties.java
浏览文件 @
fa4624c4
...
@@ -26,24 +26,22 @@ package com.sun.hotspot.igv.data;
...
@@ -26,24 +26,22 @@ package com.sun.hotspot.igv.data;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.Iterator
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.regex.Matcher
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
import
java.util.regex.Pattern
;
/**
/**
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
Properties
implements
Serializable
{
public
class
Properties
implements
Serializable
,
Iterable
<
Property
>
{
public
static
final
long
serialVersionUID
=
1L
;
public
static
final
long
serialVersionUID
=
1L
;
private
Map
<
String
,
Property
>
map
;
private
String
[]
map
=
new
String
[
4
]
;
public
Properties
()
{
public
Properties
()
{
map
=
new
HashMap
<
String
,
Property
>(
5
);
}
}
@Override
@Override
...
@@ -54,10 +52,7 @@ public class Properties implements Serializable {
...
@@ -54,10 +52,7 @@ public class Properties implements Serializable {
Properties
p
=
(
Properties
)
o
;
Properties
p
=
(
Properties
)
o
;
if
(
getProperties
().
size
()
!=
p
.
getProperties
().
size
())
{
for
(
Property
prop
:
this
)
{
return
false
;
}
for
(
Property
prop
:
getProperties
())
{
String
value
=
p
.
get
(
prop
.
getName
());
String
value
=
p
.
get
(
prop
.
getName
());
if
(
value
==
null
||
!
value
.
equals
(
prop
.
getValue
()))
{
if
(
value
==
null
||
!
value
.
equals
(
prop
.
getValue
()))
{
return
false
;
return
false
;
...
@@ -75,32 +70,33 @@ public class Properties implements Serializable {
...
@@ -75,32 +70,33 @@ public class Properties implements Serializable {
public
Properties
(
String
name
,
String
value
)
{
public
Properties
(
String
name
,
String
value
)
{
this
();
this
();
this
.
add
(
new
Property
(
name
,
value
)
);
this
.
setProperty
(
name
,
value
);
}
}
public
Properties
(
String
name
,
String
value
,
String
name1
,
String
value1
)
{
public
Properties
(
String
name
,
String
value
,
String
name1
,
String
value1
)
{
this
(
name
,
value
);
this
(
name
,
value
);
this
.
add
(
new
Property
(
name1
,
value1
)
);
this
.
setProperty
(
name1
,
value1
);
}
}
public
Properties
(
String
name
,
String
value
,
String
name1
,
String
value1
,
String
name2
,
String
value2
)
{
public
Properties
(
String
name
,
String
value
,
String
name1
,
String
value1
,
String
name2
,
String
value2
)
{
this
(
name
,
value
,
name1
,
value1
);
this
(
name
,
value
,
name1
,
value1
);
this
.
add
(
new
Property
(
name2
,
value2
)
);
this
.
setProperty
(
name2
,
value2
);
}
}
public
Properties
(
Properties
p
)
{
public
Properties
(
Properties
p
)
{
map
=
new
HashMap
<
String
,
Property
>(
p
.
map
);
map
=
new
String
[
p
.
map
.
length
];
System
.
arraycopy
(
map
,
0
,
p
.
map
,
0
,
p
.
map
.
length
);
}
}
public
static
class
Object
implements
Provider
{
public
static
class
Entity
implements
Provider
{
private
Properties
properties
;
private
Properties
properties
;
public
Object
()
{
public
Entity
()
{
properties
=
new
Properties
();
properties
=
new
Properties
();
}
}
public
Object
(
Properties
.
Object
object
)
{
public
Entity
(
Properties
.
Entity
object
)
{
properties
=
new
Properties
(
object
.
getProperties
());
properties
=
new
Properties
(
object
.
getProperties
());
}
}
...
@@ -109,6 +105,14 @@ public class Properties implements Serializable {
...
@@ -109,6 +105,14 @@ public class Properties implements Serializable {
}
}
}
}
private
String
getProperty
(
String
key
)
{
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
if
(
map
[
i
]
!=
null
&&
map
[
i
].
equals
(
key
))
{
return
map
[
i
+
1
];
}
return
null
;
}
public
interface
PropertyMatcher
{
public
interface
PropertyMatcher
{
String
getName
();
String
getName
();
...
@@ -173,13 +177,15 @@ public class Properties implements Serializable {
...
@@ -173,13 +177,15 @@ public class Properties implements Serializable {
}
}
public
Property
selectSingle
(
PropertyMatcher
matcher
)
{
public
Property
selectSingle
(
PropertyMatcher
matcher
)
{
String
value
=
null
;
Property
p
=
this
.
map
.
get
(
matcher
.
getName
());
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
{
if
(
p
==
null
)
{
if
(
map
[
i
]
!=
null
&&
matcher
.
getName
().
equals
(
map
[
i
]))
{
return
null
;
value
=
map
[
i
+
1
];
break
;
}
}
}
if
(
matcher
.
match
(
p
.
getValue
()
))
{
if
(
value
!=
null
&&
matcher
.
match
(
value
))
{
return
p
;
return
new
Property
(
matcher
.
getName
(),
value
)
;
}
else
{
}
else
{
return
null
;
return
null
;
}
}
...
@@ -194,8 +200,11 @@ public class Properties implements Serializable {
...
@@ -194,8 +200,11 @@ public class Properties implements Serializable {
public
String
toString
()
{
public
String
toString
()
{
StringBuilder
sb
=
new
StringBuilder
();
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
"["
);
sb
.
append
(
"["
);
for
(
Property
p
:
map
.
values
())
{
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
{
sb
.
append
(
p
.
toString
());
if
(
map
[
i
+
1
]
!=
null
)
{
String
p
=
map
[
i
+
1
];
sb
.
append
(
map
[
i
]
+
" = "
+
map
[
i
+
1
]
+
"; "
);
}
}
}
return
sb
.
append
(
"]"
).
toString
();
return
sb
.
append
(
"]"
).
toString
();
}
}
...
@@ -241,41 +250,51 @@ public class Properties implements Serializable {
...
@@ -241,41 +250,51 @@ public class Properties implements Serializable {
}
}
public
String
get
(
String
key
)
{
public
String
get
(
String
key
)
{
Property
p
=
map
.
get
(
key
);
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
{
if
(
p
==
null
)
{
if
(
map
[
i
]
!=
null
&&
map
[
i
].
equals
(
key
))
{
return
null
;
return
map
[
i
+
1
];
}
else
{
}
return
p
.
getValue
();
}
}
return
null
;
}
}
public
String
getProperty
(
String
string
)
{
public
void
setProperty
(
String
name
,
String
value
)
{
return
get
(
string
);
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
{
}
if
(
map
[
i
]
!=
null
&&
map
[
i
].
equals
(
name
))
{
String
p
=
map
[
i
+
1
];
public
Property
setProperty
(
String
name
,
String
value
)
{
if
(
value
==
null
)
{
// remove this property
map
[
i
]
=
null
;
map
[
i
+
1
]
=
null
;
}
else
{
map
[
i
+
1
]
=
value
;
}
return
;
}
}
if
(
value
==
null
)
{
if
(
value
==
null
)
{
// remove this property
return
;
return
map
.
remove
(
name
);
}
}
else
{
for
(
int
i
=
0
;
i
<
map
.
length
;
i
+=
2
)
{
Property
p
=
map
.
get
(
name
);
if
(
map
[
i
]
==
null
)
{
if
(
p
==
null
)
{
map
[
i
]
=
name
;
p
=
new
Property
(
name
,
value
);
map
[
i
+
1
]
=
value
;
map
.
put
(
name
,
p
);
return
;
}
else
{
p
.
setValue
(
value
);
}
}
return
p
;
}
}
String
[]
newMap
=
new
String
[
map
.
length
+
4
];
System
.
arraycopy
(
map
,
0
,
newMap
,
0
,
map
.
length
);
newMap
[
map
.
length
]
=
name
;
newMap
[
map
.
length
+
1
]
=
value
;
map
=
newMap
;
}
}
public
Collection
<
Property
>
getProperties
()
{
public
Iterator
<
Property
>
getProperties
()
{
return
Collections
.
unmodifiableCollection
(
map
.
values
()
);
return
iterator
(
);
}
}
public
void
add
(
Properties
properties
)
{
public
void
add
(
Properties
properties
)
{
for
(
Property
p
:
properties
.
getProperties
()
)
{
for
(
Property
p
:
properties
)
{
add
(
p
);
add
(
p
);
}
}
}
}
...
@@ -283,6 +302,35 @@ public class Properties implements Serializable {
...
@@ -283,6 +302,35 @@ public class Properties implements Serializable {
public
void
add
(
Property
property
)
{
public
void
add
(
Property
property
)
{
assert
property
.
getName
()
!=
null
;
assert
property
.
getName
()
!=
null
;
assert
property
.
getValue
()
!=
null
;
assert
property
.
getValue
()
!=
null
;
map
.
put
(
property
.
getName
(),
property
);
setProperty
(
property
.
getName
(),
property
.
getValue
());
}
class
PropertiesIterator
implements
Iterator
<
Property
>,
Iterable
<
Property
>
{
public
Iterator
<
Property
>
iterator
()
{
return
this
;
}
int
index
;
public
boolean
hasNext
()
{
while
(
index
<
map
.
length
&&
map
[
index
+
1
]
==
null
)
index
+=
2
;
return
index
<
map
.
length
;
}
public
Property
next
()
{
if
(
index
<
map
.
length
)
{
index
+=
2
;
return
new
Property
(
map
[
index
-
2
],
map
[
index
-
1
]);
}
return
null
;
}
public
void
remove
()
{
throw
new
UnsupportedOperationException
(
"Not supported yet."
);
}
}
public
Iterator
<
Property
>
iterator
()
{
return
new
PropertiesIterator
();
}
}
}
}
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/Property.java
浏览文件 @
fa4624c4
...
@@ -32,18 +32,19 @@ import java.io.Serializable;
...
@@ -32,18 +32,19 @@ import java.io.Serializable;
public
class
Property
implements
Serializable
{
public
class
Property
implements
Serializable
{
public
static
final
long
serialVersionUID
=
1L
;
public
static
final
long
serialVersionUID
=
1L
;
private
String
name
;
private
String
name
;
private
String
value
;
private
String
value
;
p
ublic
Property
()
{
p
rivate
Property
()
{
this
(
null
,
null
);
this
(
null
,
null
);
}
}
p
ublic
Property
(
Property
p
)
{
p
rivate
Property
(
Property
p
)
{
this
(
p
.
getName
(),
p
.
getValue
());
this
(
p
.
getName
(),
p
.
getValue
());
}
}
p
ublic
Property
(
String
name
)
{
p
rivate
Property
(
String
name
)
{
this
(
name
,
null
);
this
(
name
,
null
);
}
}
...
@@ -60,16 +61,19 @@ public class Property implements Serializable {
...
@@ -60,16 +61,19 @@ public class Property implements Serializable {
return
value
;
return
value
;
}
}
public
void
setName
(
String
s
)
{
@Override
this
.
name
=
s
;
public
String
toString
()
{
return
name
+
" = "
+
value
+
"; "
;
}
}
public
void
setValue
(
String
s
)
{
@Override
this
.
value
=
s
;
public
boolean
equals
(
Object
o
)
{
if
(!(
o
instanceof
Property
))
return
false
;
Property
p2
=
(
Property
)
o
;
return
name
.
equals
(
p2
.
name
)
&&
value
.
equals
(
p2
.
value
);
}
}
@Override
@Override
public
String
toString
()
{
public
int
hashCode
()
{
return
name
+
" = "
+
value
+
"; "
;
return
name
.
hashCode
()
+
value
==
null
?
0
:
value
.
hashCode
()
;
}
}
}
}
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/Parser.java
浏览文件 @
fa4624c4
...
@@ -38,6 +38,7 @@ import com.sun.hotspot.igv.data.serialization.XMLParser.HandoverElementHandler;
...
@@ -38,6 +38,7 @@ import com.sun.hotspot.igv.data.serialization.XMLParser.HandoverElementHandler;
import
com.sun.hotspot.igv.data.serialization.XMLParser.ParseMonitor
;
import
com.sun.hotspot.igv.data.serialization.XMLParser.ParseMonitor
;
import
com.sun.hotspot.igv.data.serialization.XMLParser.TopElementHandler
;
import
com.sun.hotspot.igv.data.serialization.XMLParser.TopElementHandler
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.util.HashMap
;
import
org.xml.sax.InputSource
;
import
org.xml.sax.InputSource
;
import
org.xml.sax.SAXException
;
import
org.xml.sax.SAXException
;
import
org.xml.sax.XMLReader
;
import
org.xml.sax.XMLReader
;
...
@@ -88,6 +89,18 @@ public class Parser {
...
@@ -88,6 +89,18 @@ public class Parser {
private
TopElementHandler
xmlDocument
=
new
TopElementHandler
();
private
TopElementHandler
xmlDocument
=
new
TopElementHandler
();
private
boolean
difference
;
private
boolean
difference
;
private
GroupCallback
groupCallback
;
private
GroupCallback
groupCallback
;
private
HashMap
<
String
,
Integer
>
idCache
=
new
HashMap
<
String
,
Integer
>();
private
int
maxId
=
0
;
private
int
lookupID
(
String
i
)
{
Integer
id
=
idCache
.
get
(
i
);
if
(
id
==
null
)
{
id
=
maxId
++;
idCache
.
put
(
i
,
id
);
}
return
id
.
intValue
();
}
// <graphDocument>
// <graphDocument>
private
ElementHandler
<
GraphDocument
,
Object
>
topHandler
=
new
ElementHandler
<
GraphDocument
,
Object
>(
TOP_ELEMENT
)
{
private
ElementHandler
<
GraphDocument
,
Object
>
topHandler
=
new
ElementHandler
<
GraphDocument
,
Object
>(
TOP_ELEMENT
)
{
...
@@ -187,13 +200,13 @@ public class Parser {
...
@@ -187,13 +200,13 @@ public class Parser {
previous
=
null
;
previous
=
null
;
}
}
InputGraph
curGraph
=
new
InputGraph
(
getParentObject
(),
previous
,
name
);
InputGraph
curGraph
=
new
InputGraph
(
getParentObject
(),
previous
,
name
);
getParentObject
().
addGraph
(
curGraph
);
this
.
graph
=
curGraph
;
this
.
graph
=
curGraph
;
return
curGraph
;
return
curGraph
;
}
}
@Override
@Override
protected
void
end
(
String
text
)
throws
SAXException
{
protected
void
end
(
String
text
)
throws
SAXException
{
getParentObject
().
addGraph
(
graph
);
graph
.
resolveBlockLinks
();
graph
.
resolveBlockLinks
();
}
}
};
};
...
@@ -207,7 +220,7 @@ public class Parser {
...
@@ -207,7 +220,7 @@ public class Parser {
@Override
@Override
protected
InputBlock
start
()
throws
SAXException
{
protected
InputBlock
start
()
throws
SAXException
{
InputGraph
graph
=
getParentObject
();
InputGraph
graph
=
getParentObject
();
String
name
=
readRequiredAttribute
(
BLOCK_NAME_PROPERTY
);
String
name
=
readRequiredAttribute
(
BLOCK_NAME_PROPERTY
)
.
intern
()
;
InputBlock
b
=
new
InputBlock
(
getParentObject
(),
name
);
InputBlock
b
=
new
InputBlock
(
getParentObject
(),
name
);
graph
.
addBlock
(
b
);
graph
.
addBlock
(
b
);
return
b
;
return
b
;
...
@@ -224,7 +237,7 @@ public class Parser {
...
@@ -224,7 +237,7 @@ public class Parser {
int
id
=
0
;
int
id
=
0
;
try
{
try
{
id
=
Integer
.
parseInt
(
s
);
id
=
lookupID
(
s
);
}
catch
(
NumberFormatException
e
)
{
}
catch
(
NumberFormatException
e
)
{
throw
new
SAXException
(
e
);
throw
new
SAXException
(
e
);
}
}
...
@@ -252,7 +265,7 @@ public class Parser {
...
@@ -252,7 +265,7 @@ public class Parser {
String
s
=
readRequiredAttribute
(
NODE_ID_PROPERTY
);
String
s
=
readRequiredAttribute
(
NODE_ID_PROPERTY
);
int
id
=
0
;
int
id
=
0
;
try
{
try
{
id
=
Integer
.
parseInt
(
s
);
id
=
lookupID
(
s
);
}
catch
(
NumberFormatException
e
)
{
}
catch
(
NumberFormatException
e
)
{
throw
new
SAXException
(
e
);
throw
new
SAXException
(
e
);
}
}
...
@@ -269,7 +282,7 @@ public class Parser {
...
@@ -269,7 +282,7 @@ public class Parser {
String
s
=
readRequiredAttribute
(
NODE_ID_PROPERTY
);
String
s
=
readRequiredAttribute
(
NODE_ID_PROPERTY
);
int
id
=
0
;
int
id
=
0
;
try
{
try
{
id
=
Integer
.
parseInt
(
s
);
id
=
lookupID
(
s
);
}
catch
(
NumberFormatException
e
)
{
}
catch
(
NumberFormatException
e
)
{
throw
new
SAXException
(
e
);
throw
new
SAXException
(
e
);
}
}
...
@@ -280,7 +293,7 @@ public class Parser {
...
@@ -280,7 +293,7 @@ public class Parser {
private
HandoverElementHandler
<
InputGraph
>
edgesHandler
=
new
HandoverElementHandler
<
InputGraph
>(
EDGES_ELEMENT
);
private
HandoverElementHandler
<
InputGraph
>
edgesHandler
=
new
HandoverElementHandler
<
InputGraph
>(
EDGES_ELEMENT
);
// Local class for edge elements
// Local class for edge elements
private
static
class
EdgeElementHandler
extends
ElementHandler
<
InputEdge
,
InputGraph
>
{
private
class
EdgeElementHandler
extends
ElementHandler
<
InputEdge
,
InputGraph
>
{
public
EdgeElementHandler
(
String
name
)
{
public
EdgeElementHandler
(
String
name
)
{
super
(
name
);
super
(
name
);
...
@@ -298,8 +311,8 @@ public class Parser {
...
@@ -298,8 +311,8 @@ public class Parser {
toIndex
=
Integer
.
parseInt
(
toIndexString
);
toIndex
=
Integer
.
parseInt
(
toIndexString
);
}
}
from
=
Integer
.
parseInt
(
readRequiredAttribute
(
FROM_PROPERTY
));
from
=
lookupID
(
readRequiredAttribute
(
FROM_PROPERTY
));
to
=
Integer
.
parseInt
(
readRequiredAttribute
(
TO_PROPERTY
));
to
=
lookupID
(
readRequiredAttribute
(
TO_PROPERTY
));
}
catch
(
NumberFormatException
e
)
{
}
catch
(
NumberFormatException
e
)
{
throw
new
SAXException
(
e
);
throw
new
SAXException
(
e
);
}
}
...
@@ -344,18 +357,16 @@ public class Parser {
...
@@ -344,18 +357,16 @@ public class Parser {
}
}
};
};
// <property>
// <property>
private
ElementHandler
<
Property
,
Properties
.
Provider
>
propertyHandler
=
new
XMLParser
.
ElementHandler
<
Property
,
Properties
.
Provider
>(
PROPERTY_ELEMENT
,
true
)
{
private
ElementHandler
<
String
,
Properties
.
Provider
>
propertyHandler
=
new
XMLParser
.
ElementHandler
<
String
,
Properties
.
Provider
>(
PROPERTY_ELEMENT
,
true
)
{
@Override
@Override
public
Property
start
()
throws
SAXException
{
public
String
start
()
throws
SAXException
{
String
value
=
""
;
return
readRequiredAttribute
(
PROPERTY_NAME_PROPERTY
).
intern
();
String
name
=
readRequiredAttribute
(
PROPERTY_NAME_PROPERTY
).
intern
();
return
getParentObject
().
getProperties
().
setProperty
(
name
,
value
);
}
}
@Override
@Override
public
void
end
(
String
text
)
{
public
void
end
(
String
text
)
{
get
Object
().
setValue
(
text
.
trim
().
intern
());
get
ParentObject
().
getProperties
().
setProperty
(
getObject
(),
text
.
trim
().
intern
());
}
}
};
};
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/Printer.java
浏览文件 @
fa4624c4
...
@@ -67,7 +67,7 @@ public class Printer {
...
@@ -67,7 +67,7 @@ public class Printer {
private
void
export
(
XMLWriter
writer
,
Group
g
)
throws
IOException
{
private
void
export
(
XMLWriter
writer
,
Group
g
)
throws
IOException
{
Properties
attributes
=
new
Properties
();
Properties
attributes
=
new
Properties
();
attributes
.
add
(
new
Property
(
"difference"
,
Boolean
.
toString
(
true
)
));
attributes
.
setProperty
(
"difference"
,
Boolean
.
toString
(
true
));
writer
.
startTag
(
Parser
.
GROUP_ELEMENT
,
attributes
);
writer
.
startTag
(
Parser
.
GROUP_ELEMENT
,
attributes
);
writer
.
writeProperties
(
g
.
getProperties
());
writer
.
writeProperties
(
g
.
getProperties
());
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/XMLParser.java
浏览文件 @
fa4624c4
...
@@ -25,7 +25,7 @@ package com.sun.hotspot.igv.data.serialization;
...
@@ -25,7 +25,7 @@ package com.sun.hotspot.igv.data.serialization;
import
com.sun.hotspot.igv.data.Property
;
import
com.sun.hotspot.igv.data.Property
;
import
com.sun.hotspot.igv.data.Properties
;
import
com.sun.hotspot.igv.data.Properties
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.Stack
;
import
java.util.Stack
;
import
org.xml.sax.Attributes
;
import
org.xml.sax.Attributes
;
import
org.xml.sax.ContentHandler
;
import
org.xml.sax.ContentHandler
;
...
@@ -89,7 +89,7 @@ public class XMLParser implements ContentHandler {
...
@@ -89,7 +89,7 @@ public class XMLParser implements ContentHandler {
private
Attributes
attr
;
private
Attributes
attr
;
private
StringBuilder
currentText
;
private
StringBuilder
currentText
;
private
ParseMonitor
monitor
;
private
ParseMonitor
monitor
;
private
Hash
table
<
String
,
ElementHandler
<?,
?
super
T
>>
hashtable
;
private
Hash
Map
<
String
,
ElementHandler
<?,
?
super
T
>>
hashtable
;
private
boolean
needsText
;
private
boolean
needsText
;
private
ElementHandler
<
P
,
?>
parentElement
;
private
ElementHandler
<
P
,
?>
parentElement
;
...
@@ -110,7 +110,7 @@ public class XMLParser implements ContentHandler {
...
@@ -110,7 +110,7 @@ public class XMLParser implements ContentHandler {
}
}
public
ElementHandler
(
String
name
,
boolean
needsText
)
{
public
ElementHandler
(
String
name
,
boolean
needsText
)
{
this
.
hashtable
=
new
Hash
table
<
String
,
ElementHandler
<?,
?
super
T
>>();
this
.
hashtable
=
new
Hash
Map
<
String
,
ElementHandler
<?,
?
super
T
>>();
this
.
name
=
name
;
this
.
name
=
name
;
this
.
needsText
=
needsText
;
this
.
needsText
=
needsText
;
}
}
...
@@ -153,7 +153,7 @@ public class XMLParser implements ContentHandler {
...
@@ -153,7 +153,7 @@ public class XMLParser implements ContentHandler {
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
String
val
=
attr
.
getValue
(
i
).
intern
();
String
val
=
attr
.
getValue
(
i
).
intern
();
String
localName
=
attr
.
getLocalName
(
i
).
intern
();
String
localName
=
attr
.
getLocalName
(
i
).
intern
();
p
.
add
(
new
Property
(
val
,
localName
)
);
p
.
setProperty
(
val
,
localName
);
}
}
}
}
...
...
src/share/tools/IdealGraphVisualizer/Data/src/com/sun/hotspot/igv/data/serialization/XMLWriter.java
浏览文件 @
fa4624c4
...
@@ -89,7 +89,7 @@ public class XMLWriter extends Writer {
...
@@ -89,7 +89,7 @@ public class XMLWriter extends Writer {
inner
.
write
(
"<"
+
name
);
inner
.
write
(
"<"
+
name
);
elementStack
.
push
(
name
);
elementStack
.
push
(
name
);
for
(
Property
p
:
attributes
.
getProperties
()
)
{
for
(
Property
p
:
attributes
)
{
inner
.
write
(
" "
+
p
.
getName
()
+
"=\""
);
inner
.
write
(
" "
+
p
.
getName
()
+
"=\""
);
write
(
p
.
getValue
().
toCharArray
());
write
(
p
.
getValue
().
toCharArray
());
inner
.
write
(
"\""
);
inner
.
write
(
"\""
);
...
@@ -101,7 +101,7 @@ public class XMLWriter extends Writer {
...
@@ -101,7 +101,7 @@ public class XMLWriter extends Writer {
public
void
simpleTag
(
String
name
,
Properties
attributes
)
throws
IOException
{
public
void
simpleTag
(
String
name
,
Properties
attributes
)
throws
IOException
{
inner
.
write
(
"<"
+
name
);
inner
.
write
(
"<"
+
name
);
for
(
Property
p
:
attributes
.
getProperties
()
)
{
for
(
Property
p
:
attributes
)
{
inner
.
write
(
" "
+
p
.
getName
()
+
"=\""
);
inner
.
write
(
" "
+
p
.
getName
()
+
"=\""
);
write
(
p
.
getValue
().
toCharArray
());
write
(
p
.
getValue
().
toCharArray
());
inner
.
write
(
"\""
);
inner
.
write
(
"\""
);
...
@@ -111,13 +111,13 @@ public class XMLWriter extends Writer {
...
@@ -111,13 +111,13 @@ public class XMLWriter extends Writer {
}
}
public
void
writeProperties
(
Properties
props
)
throws
IOException
{
public
void
writeProperties
(
Properties
props
)
throws
IOException
{
if
(
props
.
getProperties
().
size
()
==
0
)
{
if
(
props
.
getProperties
().
hasNext
()
==
false
)
{
return
;
return
;
}
}
startTag
(
Parser
.
PROPERTIES_ELEMENT
);
startTag
(
Parser
.
PROPERTIES_ELEMENT
);
for
(
Property
p
:
props
.
getProperties
()
)
{
for
(
Property
p
:
props
)
{
startTag
(
Parser
.
PROPERTY_ELEMENT
,
new
Properties
(
Parser
.
PROPERTY_NAME_PROPERTY
,
p
.
getName
()));
startTag
(
Parser
.
PROPERTY_ELEMENT
,
new
Properties
(
Parser
.
PROPERTY_NAME_PROPERTY
,
p
.
getName
()));
this
.
write
(
p
.
getValue
().
toCharArray
());
this
.
write
(
p
.
getValue
().
toCharArray
());
endTag
();
endTag
();
...
...
src/share/tools/IdealGraphVisualizer/Difference/src/com/sun/hotspot/igv/difference/Difference.java
浏览文件 @
fa4624c4
...
@@ -29,6 +29,7 @@ import com.sun.hotspot.igv.data.InputEdge;
...
@@ -29,6 +29,7 @@ import com.sun.hotspot.igv.data.InputEdge;
import
com.sun.hotspot.igv.data.InputGraph
;
import
com.sun.hotspot.igv.data.InputGraph
;
import
com.sun.hotspot.igv.data.InputNode
;
import
com.sun.hotspot.igv.data.InputNode
;
import
com.sun.hotspot.igv.data.Property
;
import
com.sun.hotspot.igv.data.Property
;
import
java.util.Collection
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -124,8 +125,8 @@ public class Difference {
...
@@ -124,8 +125,8 @@ public class Difference {
inputNodeMap
.
put
(
n
,
n2
);
inputNodeMap
.
put
(
n
,
n2
);
}
}
Set
<
InputEdge
>
edgesA
=
a
.
getEdges
();
Collection
<
InputEdge
>
edgesA
=
a
.
getEdges
();
Set
<
InputEdge
>
edgesB
=
b
.
getEdges
();
Collection
<
InputEdge
>
edgesB
=
b
.
getEdges
();
Set
<
InputEdge
>
newEdges
=
new
HashSet
<
InputEdge
>();
Set
<
InputEdge
>
newEdges
=
new
HashSet
<
InputEdge
>();
...
@@ -182,7 +183,7 @@ public class Difference {
...
@@ -182,7 +183,7 @@ public class Difference {
public
double
getValue
()
{
public
double
getValue
()
{
double
result
=
0.0
;
double
result
=
0.0
;
for
(
Property
p
:
n1
.
getProperties
()
.
getProperties
()
)
{
for
(
Property
p
:
n1
.
getProperties
())
{
double
faktor
=
1.0
;
double
faktor
=
1.0
;
for
(
String
forbidden
:
IGNORE_PROPERTIES
)
{
for
(
String
forbidden
:
IGNORE_PROPERTIES
)
{
if
(
p
.
getName
().
equals
(
forbidden
))
{
if
(
p
.
getName
().
equals
(
forbidden
))
{
...
@@ -287,34 +288,34 @@ public class Difference {
...
@@ -287,34 +288,34 @@ public class Difference {
private
static
void
markAsChanged
(
InputNode
n
,
InputNode
firstNode
,
InputNode
otherNode
)
{
private
static
void
markAsChanged
(
InputNode
n
,
InputNode
firstNode
,
InputNode
otherNode
)
{
boolean
difference
=
false
;
boolean
difference
=
false
;
for
(
Property
p
:
otherNode
.
getProperties
()
.
getProperties
()
)
{
for
(
Property
p
:
otherNode
.
getProperties
())
{
String
s
=
firstNode
.
getProperties
().
get
Property
(
p
.
getName
());
String
s
=
firstNode
.
getProperties
().
get
(
p
.
getName
());
if
(!
p
.
getValue
().
equals
(
s
))
{
if
(!
p
.
getValue
().
equals
(
s
))
{
difference
=
true
;
difference
=
true
;
n
.
getProperties
().
add
(
new
Property
(
OLD_PREFIX
+
p
.
getName
(),
p
.
getValue
()
));
n
.
getProperties
().
setProperty
(
OLD_PREFIX
+
p
.
getName
(),
p
.
getValue
(
));
}
}
}
}
for
(
Property
p
:
firstNode
.
getProperties
()
.
getProperties
()
)
{
for
(
Property
p
:
firstNode
.
getProperties
())
{
String
s
=
otherNode
.
getProperties
().
get
Property
(
p
.
getName
());
String
s
=
otherNode
.
getProperties
().
get
(
p
.
getName
());
if
(
s
==
null
&&
p
.
getValue
().
length
()
>
0
)
{
if
(
s
==
null
&&
p
.
getValue
().
length
()
>
0
)
{
difference
=
true
;
difference
=
true
;
n
.
getProperties
().
add
(
new
Property
(
OLD_PREFIX
+
p
.
getName
(),
""
)
);
n
.
getProperties
().
setProperty
(
OLD_PREFIX
+
p
.
getName
(),
""
);
}
}
}
}
if
(
difference
)
{
if
(
difference
)
{
n
.
getProperties
().
add
(
new
Property
(
PROPERTY_STATE
,
VALUE_CHANGED
)
);
n
.
getProperties
().
setProperty
(
PROPERTY_STATE
,
VALUE_CHANGED
);
}
else
{
}
else
{
n
.
getProperties
().
add
(
new
Property
(
PROPERTY_STATE
,
VALUE_SAME
)
);
n
.
getProperties
().
setProperty
(
PROPERTY_STATE
,
VALUE_SAME
);
}
}
}
}
private
static
void
markAsDeleted
(
InputNode
n
)
{
private
static
void
markAsDeleted
(
InputNode
n
)
{
n
.
getProperties
().
add
(
new
Property
(
PROPERTY_STATE
,
VALUE_DELETED
)
);
n
.
getProperties
().
setProperty
(
PROPERTY_STATE
,
VALUE_DELETED
);
}
}
private
static
void
markAsNew
(
InputNode
n
)
{
private
static
void
markAsNew
(
InputNode
n
)
{
n
.
getProperties
().
add
(
new
Property
(
PROPERTY_STATE
,
VALUE_NEW
)
);
n
.
getProperties
().
setProperty
(
PROPERTY_STATE
,
VALUE_NEW
);
}
}
}
}
src/share/tools/IdealGraphVisualizer/Filter/manifest.mf
浏览文件 @
fa4624c4
Manifest-Version: 1.0
Manifest-Version: 1.0
OpenIDE-Module: com.sun.hotspot.igv.filter
OpenIDE-Module: com.sun.hotspot.igv.filter
OpenIDE-Module-Layer: com/sun/hotspot/igv/filter/layer.xml
OpenIDE-Module-Layer: com/sun/hotspot/igv/filter/layer.xml
OpenIDE-Module-Localizing-Bundle: com/sun/hotspot/igv/filter/Bundle.properties
OpenIDE-Module-Localizing-Bundle: com/sun/hotspot/igv/filter/Bundle.properties
OpenIDE-Module-Specification-Version: 1.0
OpenIDE-Module-Specification-Version: 1.0
src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/CustomFilter.java
浏览文件 @
fa4624c4
...
@@ -25,7 +25,6 @@
...
@@ -25,7 +25,6 @@
package
com.sun.hotspot.igv.filter
;
package
com.sun.hotspot.igv.filter
;
import
com.sun.hotspot.igv.graph.Diagram
;
import
com.sun.hotspot.igv.graph.Diagram
;
import
com.sun.hotspot.igv.data.Property
;
import
java.io.BufferedReader
;
import
java.io.BufferedReader
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.InputStream
;
...
@@ -56,7 +55,7 @@ public class CustomFilter extends AbstractFilter {
...
@@ -56,7 +55,7 @@ public class CustomFilter extends AbstractFilter {
public
CustomFilter
(
String
name
,
String
code
)
{
public
CustomFilter
(
String
name
,
String
code
)
{
this
.
name
=
name
;
this
.
name
=
name
;
this
.
code
=
code
;
this
.
code
=
code
;
getProperties
().
add
(
new
Property
(
"name"
,
name
)
);
getProperties
().
setProperty
(
"name"
,
name
);
}
}
public
String
getName
()
{
public
String
getName
()
{
...
...
src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/SplitFilter.java
浏览文件 @
fa4624c4
...
@@ -56,8 +56,8 @@ public class SplitFilter extends AbstractFilter {
...
@@ -56,8 +56,8 @@ public class SplitFilter extends AbstractFilter {
for
(
OutputSlot
os
:
f
.
getOutputSlots
())
{
for
(
OutputSlot
os
:
f
.
getOutputSlots
())
{
for
(
Connection
c
:
os
.
getConnections
())
{
for
(
Connection
c
:
os
.
getConnections
())
{
InputSlot
is
=
c
.
getInputSlot
();
InputSlot
is
=
c
.
getInputSlot
();
is
.
setName
(
f
.
getProperties
().
get
Property
(
"dump_spec"
));
is
.
setName
(
f
.
getProperties
().
get
(
"dump_spec"
));
String
s
=
f
.
getProperties
().
get
Property
(
"short_name"
);
String
s
=
f
.
getProperties
().
get
(
"short_name"
);
if
(
s
!=
null
)
{
if
(
s
!=
null
)
{
is
.
setShortName
(
s
);
is
.
setShortName
(
s
);
}
}
...
...
src/share/tools/IdealGraphVisualizer/Graph/src/com/sun/hotspot/igv/graph/Diagram.java
浏览文件 @
fa4624c4
...
@@ -35,7 +35,7 @@ import java.util.Collections;
...
@@ -35,7 +35,7 @@ import java.util.Collections;
import
java.util.Comparator
;
import
java.util.Comparator
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -126,7 +126,7 @@ public class Diagram {
...
@@ -126,7 +126,7 @@ public class Diagram {
d
.
updateBlocks
();
d
.
updateBlocks
();
Collection
<
InputNode
>
nodes
=
graph
.
getNodes
();
Collection
<
InputNode
>
nodes
=
graph
.
getNodes
();
Hash
table
<
Integer
,
Figure
>
figureHash
=
new
Hashtable
<
Integer
,
Figure
>();
Hash
Map
<
Integer
,
Figure
>
figureHash
=
new
HashMap
<
Integer
,
Figure
>();
for
(
InputNode
n
:
nodes
)
{
for
(
InputNode
n
:
nodes
)
{
Figure
f
=
d
.
createFigure
();
Figure
f
=
d
.
createFigure
();
f
.
getSource
().
addSourceNode
(
n
);
f
.
getSource
().
addSourceNode
(
n
);
...
...
src/share/tools/IdealGraphVisualizer/Graph/src/com/sun/hotspot/igv/graph/Figure.java
浏览文件 @
fa4624c4
...
@@ -42,7 +42,7 @@ import java.util.Set;
...
@@ -42,7 +42,7 @@ import java.util.Set;
*
*
* @author Thomas Wuerthinger
* @author Thomas Wuerthinger
*/
*/
public
class
Figure
extends
Properties
.
Object
implements
Source
.
Provider
,
Vertex
{
public
class
Figure
extends
Properties
.
Entity
implements
Source
.
Provider
,
Vertex
{
public
static
final
int
INSET
=
6
;
public
static
final
int
INSET
=
6
;
public
static
final
int
SLOT_WIDTH
=
10
;
public
static
final
int
SLOT_WIDTH
=
10
;
...
...
src/share/tools/IdealGraphVisualizer/HierarchicalLayout/src/com/sun/hotspot/igv/hierarchicallayout/Graph.java
浏览文件 @
fa4624c4
...
@@ -26,7 +26,7 @@ package com.sun.hotspot.igv.hierarchicallayout;
...
@@ -26,7 +26,7 @@ package com.sun.hotspot.igv.hierarchicallayout;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.LinkedList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Queue
;
import
java.util.Queue
;
...
@@ -37,13 +37,13 @@ import java.util.Queue;
...
@@ -37,13 +37,13 @@ import java.util.Queue;
*/
*/
public
class
Graph
<
N
,
E
>
{
public
class
Graph
<
N
,
E
>
{
private
Hash
table
<
Object
,
Node
<
N
,
E
>>
nodes
;
private
Hash
Map
<
Object
,
Node
<
N
,
E
>>
nodes
;
private
Hash
table
<
Object
,
Edge
<
N
,
E
>>
edges
;
private
Hash
Map
<
Object
,
Edge
<
N
,
E
>>
edges
;
private
List
<
Node
<
N
,
E
>>
nodeList
;
private
List
<
Node
<
N
,
E
>>
nodeList
;
public
Graph
()
{
public
Graph
()
{
nodes
=
new
Hash
table
<
Object
,
Node
<
N
,
E
>>();
nodes
=
new
Hash
Map
<
Object
,
Node
<
N
,
E
>>();
edges
=
new
Hash
table
<
Object
,
Edge
<
N
,
E
>>();
edges
=
new
Hash
Map
<
Object
,
Edge
<
N
,
E
>>();
nodeList
=
new
ArrayList
<
Node
<
N
,
E
>>();
nodeList
=
new
ArrayList
<
Node
<
N
,
E
>>();
}
}
...
...
src/share/tools/IdealGraphVisualizer/HierarchicalLayout/src/com/sun/hotspot/igv/hierarchicallayout/HierarchicalClusterLayoutManager.java
浏览文件 @
fa4624c4
...
@@ -25,7 +25,7 @@ package com.sun.hotspot.igv.hierarchicallayout;
...
@@ -25,7 +25,7 @@ package com.sun.hotspot.igv.hierarchicallayout;
import
java.awt.Point
;
import
java.awt.Point
;
import
java.awt.Rectangle
;
import
java.awt.Rectangle
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.Set
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
@@ -69,19 +69,19 @@ public class HierarchicalClusterLayoutManager implements LayoutManager {
...
@@ -69,19 +69,19 @@ public class HierarchicalClusterLayoutManager implements LayoutManager {
assert
graph
.
verify
();
assert
graph
.
verify
();
Hash
table
<
Cluster
,
List
<
Vertex
>>
lists
=
new
Hashtable
<
Cluster
,
List
<
Vertex
>>();
Hash
Map
<
Cluster
,
List
<
Vertex
>>
lists
=
new
HashMap
<
Cluster
,
List
<
Vertex
>>();
Hash
table
<
Cluster
,
List
<
Link
>>
listsConnection
=
new
Hashtable
<
Cluster
,
List
<
Link
>>();
Hash
Map
<
Cluster
,
List
<
Link
>>
listsConnection
=
new
HashMap
<
Cluster
,
List
<
Link
>>();
Hash
table
<
Cluster
,
Hashtable
<
Port
,
ClusterInputSlotNode
>>
clusterInputSlotHash
=
new
Hashtable
<
Cluster
,
Hashtable
<
Port
,
ClusterInputSlotNode
>>();
Hash
Map
<
Cluster
,
HashMap
<
Port
,
ClusterInputSlotNode
>>
clusterInputSlotHash
=
new
HashMap
<
Cluster
,
HashMap
<
Port
,
ClusterInputSlotNode
>>();
Hash
table
<
Cluster
,
Hashtable
<
Port
,
ClusterOutputSlotNode
>>
clusterOutputSlotHash
=
new
Hashtable
<
Cluster
,
Hashtable
<
Port
,
ClusterOutputSlotNode
>>();
Hash
Map
<
Cluster
,
HashMap
<
Port
,
ClusterOutputSlotNode
>>
clusterOutputSlotHash
=
new
HashMap
<
Cluster
,
HashMap
<
Port
,
ClusterOutputSlotNode
>>();
Hash
table
<
Cluster
,
ClusterNode
>
clusterNodes
=
new
Hashtable
<
Cluster
,
ClusterNode
>();
Hash
Map
<
Cluster
,
ClusterNode
>
clusterNodes
=
new
HashMap
<
Cluster
,
ClusterNode
>();
Hash
table
<
Cluster
,
Set
<
ClusterInputSlotNode
>>
clusterInputSlotSet
=
new
Hashtable
<
Cluster
,
Set
<
ClusterInputSlotNode
>>();
Hash
Map
<
Cluster
,
Set
<
ClusterInputSlotNode
>>
clusterInputSlotSet
=
new
HashMap
<
Cluster
,
Set
<
ClusterInputSlotNode
>>();
Hash
table
<
Cluster
,
Set
<
ClusterOutputSlotNode
>>
clusterOutputSlotSet
=
new
Hashtable
<
Cluster
,
Set
<
ClusterOutputSlotNode
>>();
Hash
Map
<
Cluster
,
Set
<
ClusterOutputSlotNode
>>
clusterOutputSlotSet
=
new
HashMap
<
Cluster
,
Set
<
ClusterOutputSlotNode
>>();
Set
<
Link
>
clusterEdges
=
new
HashSet
<
Link
>();
Set
<
Link
>
clusterEdges
=
new
HashSet
<
Link
>();
Set
<
Link
>
interClusterEdges
=
new
HashSet
<
Link
>();
Set
<
Link
>
interClusterEdges
=
new
HashSet
<
Link
>();
Hash
table
<
Link
,
ClusterOutgoingConnection
>
linkClusterOutgoingConnection
=
new
Hashtable
<
Link
,
ClusterOutgoingConnection
>();
Hash
Map
<
Link
,
ClusterOutgoingConnection
>
linkClusterOutgoingConnection
=
new
HashMap
<
Link
,
ClusterOutgoingConnection
>();
Hash
table
<
Link
,
InterClusterConnection
>
linkInterClusterConnection
=
new
Hashtable
<
Link
,
InterClusterConnection
>();
Hash
Map
<
Link
,
InterClusterConnection
>
linkInterClusterConnection
=
new
HashMap
<
Link
,
InterClusterConnection
>();
Hash
table
<
Link
,
ClusterIngoingConnection
>
linkClusterIngoingConnection
=
new
Hashtable
<
Link
,
ClusterIngoingConnection
>();
Hash
Map
<
Link
,
ClusterIngoingConnection
>
linkClusterIngoingConnection
=
new
HashMap
<
Link
,
ClusterIngoingConnection
>();
Set
<
ClusterNode
>
clusterNodeSet
=
new
HashSet
<
ClusterNode
>();
Set
<
ClusterNode
>
clusterNodeSet
=
new
HashSet
<
ClusterNode
>();
Set
<
Cluster
>
cluster
=
graph
.
getClusters
();
Set
<
Cluster
>
cluster
=
graph
.
getClusters
();
...
@@ -89,8 +89,8 @@ public class HierarchicalClusterLayoutManager implements LayoutManager {
...
@@ -89,8 +89,8 @@ public class HierarchicalClusterLayoutManager implements LayoutManager {
for
(
Cluster
c
:
cluster
)
{
for
(
Cluster
c
:
cluster
)
{
lists
.
put
(
c
,
new
ArrayList
<
Vertex
>());
lists
.
put
(
c
,
new
ArrayList
<
Vertex
>());
listsConnection
.
put
(
c
,
new
ArrayList
<
Link
>());
listsConnection
.
put
(
c
,
new
ArrayList
<
Link
>());
clusterInputSlotHash
.
put
(
c
,
new
Hash
table
<
Port
,
ClusterInputSlotNode
>());
clusterInputSlotHash
.
put
(
c
,
new
Hash
Map
<
Port
,
ClusterInputSlotNode
>());
clusterOutputSlotHash
.
put
(
c
,
new
Hash
table
<
Port
,
ClusterOutputSlotNode
>());
clusterOutputSlotHash
.
put
(
c
,
new
Hash
Map
<
Port
,
ClusterOutputSlotNode
>());
clusterOutputSlotSet
.
put
(
c
,
new
TreeSet
<
ClusterOutputSlotNode
>());
clusterOutputSlotSet
.
put
(
c
,
new
TreeSet
<
ClusterOutputSlotNode
>());
clusterInputSlotSet
.
put
(
c
,
new
TreeSet
<
ClusterInputSlotNode
>());
clusterInputSlotSet
.
put
(
c
,
new
TreeSet
<
ClusterInputSlotNode
>());
ClusterNode
cn
=
new
ClusterNode
(
c
,
""
+
z
);
ClusterNode
cn
=
new
ClusterNode
(
c
,
""
+
z
);
...
...
src/share/tools/IdealGraphVisualizer/Layout/src/com/sun/hotspot/igv/layout/LayoutGraph.java
浏览文件 @
fa4624c4
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
package
com.sun.hotspot.igv.layout
;
package
com.sun.hotspot.igv.layout
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.Set
;
import
java.util.Set
;
import
java.util.SortedSet
;
import
java.util.SortedSet
;
import
java.util.TreeSet
;
import
java.util.TreeSet
;
...
@@ -37,9 +37,9 @@ public class LayoutGraph {
...
@@ -37,9 +37,9 @@ public class LayoutGraph {
private
Set
<?
extends
Link
>
links
;
private
Set
<?
extends
Link
>
links
;
private
SortedSet
<
Vertex
>
vertices
;
private
SortedSet
<
Vertex
>
vertices
;
private
Hash
table
<
Vertex
,
Set
<
Port
>>
inputPorts
;
private
Hash
Map
<
Vertex
,
Set
<
Port
>>
inputPorts
;
private
Hash
table
<
Vertex
,
Set
<
Port
>>
outputPorts
;
private
Hash
Map
<
Vertex
,
Set
<
Port
>>
outputPorts
;
private
Hash
table
<
Port
,
Set
<
Link
>>
portLinks
;
private
Hash
Map
<
Port
,
Set
<
Link
>>
portLinks
;
public
LayoutGraph
(
Set
<?
extends
Link
>
links
)
{
public
LayoutGraph
(
Set
<?
extends
Link
>
links
)
{
this
(
links
,
new
HashSet
<
Vertex
>());
this
(
links
,
new
HashSet
<
Vertex
>());
...
@@ -50,9 +50,9 @@ public class LayoutGraph {
...
@@ -50,9 +50,9 @@ public class LayoutGraph {
assert
verify
();
assert
verify
();
vertices
=
new
TreeSet
<
Vertex
>();
vertices
=
new
TreeSet
<
Vertex
>();
portLinks
=
new
Hash
table
<
Port
,
Set
<
Link
>>();
portLinks
=
new
Hash
Map
<
Port
,
Set
<
Link
>>();
inputPorts
=
new
Hash
table
<
Vertex
,
Set
<
Port
>>();
inputPorts
=
new
Hash
Map
<
Vertex
,
Set
<
Port
>>();
outputPorts
=
new
Hash
table
<
Vertex
,
Set
<
Port
>>();
outputPorts
=
new
Hash
Map
<
Vertex
,
Set
<
Port
>>();
for
(
Link
l
:
links
)
{
for
(
Link
l
:
links
)
{
Port
p
=
l
.
getFrom
();
Port
p
=
l
.
getFrom
();
...
...
src/share/tools/IdealGraphVisualizer/README
浏览文件 @
fa4624c4
...
@@ -5,21 +5,16 @@ of Linz in Austria and has been included as part of hotspot since that
...
@@ -5,21 +5,16 @@ of Linz in Austria and has been included as part of hotspot since that
was the primary target of the tool. The tool itself is fairly general
was the primary target of the tool. The tool itself is fairly general
with only a few modules that contain C2 specific elements.
with only a few modules that contain C2 specific elements.
The tool is built on top of the NetBeans 6.
0
rich client
The tool is built on top of the NetBeans 6.
1
rich client
infrastructure and so requires NetBeans to build. It currently
infrastructure and so requires NetBeans to build. It currently
requires Java 6 to run as it needs support for JavaScript for its
requires Java 6 to run as it needs support for JavaScript for its
filtering mechanism and assumes it's built into the platform. It
filtering mechanism and assumes it's built into the platform. It
should build out of the box whit NetBeans 6 and Java 6 or later. It's
should build out of the box with NetBeans 6.1 and Java 6 or later.
possible to run it on 1.5 by including Rhino on the classpath though
It's possible to run it on 1.5 by including Rhino on the classpath
that currently isn't working correctly. Support for exporting graphs
though that currently isn't working correctly. Support for exporting
as SVG can be enabled by adding batik to the classpath which isn't
graphs as SVG can be enabled by adding batik to the classpath which
included by default.
isn't included by default. It can be built on top of NetBeans 6.0 if
you change the required modules to be platform7 instead of platform8.
It can be built on top of NetBeans 6.1 if you change the required
modules to be platform8 instead of platform7. The tool could run on
JDK 1.5 with some reworking of the how the JavaScript support is
enabled but currently it requires some tweaking of the setup. This
will be fixed in a later setup.
The JVM support is controlled by the flag -XX:PrintIdealGraphLevel=#
The JVM support is controlled by the flag -XX:PrintIdealGraphLevel=#
where # is:
where # is:
...
...
src/share/tools/IdealGraphVisualizer/Util/src/com/sun/hotspot/igv/util/PropertiesSheet.java
浏览文件 @
fa4624c4
...
@@ -36,11 +36,11 @@ import org.openide.nodes.Sheet;
...
@@ -36,11 +36,11 @@ import org.openide.nodes.Sheet;
*/
*/
public
class
PropertiesSheet
{
public
class
PropertiesSheet
{
public
static
void
initializeSheet
(
Properties
properties
,
Sheet
s
)
{
public
static
void
initializeSheet
(
final
Properties
properties
,
Sheet
s
)
{
Sheet
.
Set
set1
=
Sheet
.
createPropertiesSet
();
Sheet
.
Set
set1
=
Sheet
.
createPropertiesSet
();
set1
.
setDisplayName
(
"Properties"
);
set1
.
setDisplayName
(
"Properties"
);
for
(
final
Property
p
:
properties
.
getProperties
()
)
{
for
(
final
Property
p
:
properties
)
{
Node
.
Property
<
String
>
prop
=
new
Node
.
Property
<
String
>(
String
.
class
)
{
Node
.
Property
<
String
>
prop
=
new
Node
.
Property
<
String
>(
String
.
class
)
{
@Override
@Override
...
@@ -60,7 +60,7 @@ public class PropertiesSheet {
...
@@ -60,7 +60,7 @@ public class PropertiesSheet {
@Override
@Override
public
void
setValue
(
String
arg0
)
throws
IllegalAccessException
,
IllegalArgumentException
,
InvocationTargetException
{
public
void
setValue
(
String
arg0
)
throws
IllegalAccessException
,
IllegalArgumentException
,
InvocationTargetException
{
p
.
setValue
(
arg0
);
p
roperties
.
setProperty
(
p
.
getName
(),
arg0
);
}
}
};
};
prop
.
setName
(
p
.
getName
());
prop
.
setName
(
p
.
getName
());
...
...
src/share/tools/IdealGraphVisualizer/Util/src/com/sun/hotspot/igv/util/RangeSliderModel.java
浏览文件 @
fa4624c4
...
@@ -65,13 +65,19 @@ public class RangeSliderModel implements ChangedEventProvider<RangeSliderModel>
...
@@ -65,13 +65,19 @@ public class RangeSliderModel implements ChangedEventProvider<RangeSliderModel>
public
RangeSliderModel
(
List
<
String
>
positions
)
{
public
RangeSliderModel
(
List
<
String
>
positions
)
{
assert
positions
.
size
()
>
0
;
assert
positions
.
size
()
>
0
;
this
.
positions
=
positions
;
this
.
changedEvent
=
new
ChangedEvent
<
RangeSliderModel
>(
this
);
this
.
changedEvent
=
new
ChangedEvent
<
RangeSliderModel
>(
this
);
this
.
colorChangedEvent
=
new
ChangedEvent
<
RangeSliderModel
>(
this
);
this
.
colorChangedEvent
=
new
ChangedEvent
<
RangeSliderModel
>(
this
);
setPositions
(
positions
);
}
protected
void
setPositions
(
List
<
String
>
positions
)
{
this
.
positions
=
positions
;
colors
=
new
ArrayList
<
Color
>();
colors
=
new
ArrayList
<
Color
>();
for
(
int
i
=
0
;
i
<
positions
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
positions
.
size
();
i
++)
{
colors
.
add
(
Color
.
black
);
colors
.
add
(
Color
.
black
);
}
}
changedEvent
.
fire
();
colorChangedEvent
.
fire
();
}
}
public
void
setColors
(
List
<
Color
>
colors
)
{
public
void
setColors
(
List
<
Color
>
colors
)
{
...
...
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/DiagramScene.java
浏览文件 @
fa4624c4
...
@@ -63,7 +63,7 @@ import java.util.ArrayList;
...
@@ -63,7 +63,7 @@ import java.util.ArrayList;
import
java.util.Collection
;
import
java.util.Collection
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Hash
table
;
import
java.util.Hash
Map
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -104,10 +104,10 @@ import org.openide.util.lookup.InstanceContent;
...
@@ -104,10 +104,10 @@ import org.openide.util.lookup.InstanceContent;
*/
*/
public
class
DiagramScene
extends
Scene
implements
ChangedListener
<
DiagramViewModel
>
{
public
class
DiagramScene
extends
Scene
implements
ChangedListener
<
DiagramViewModel
>
{
private
Hash
table
<
Figure
,
FigureWidget
>
figureWidgets
;
private
Hash
Map
<
Figure
,
FigureWidget
>
figureWidgets
;
private
Hash
table
<
Slot
,
SlotWidget
>
slotWidgets
;
private
Hash
Map
<
Slot
,
SlotWidget
>
slotWidgets
;
private
Hash
table
<
Connection
,
ConnectionWidget
>
connectionWidgets
;
private
Hash
Map
<
Connection
,
ConnectionWidget
>
connectionWidgets
;
private
Hash
table
<
InputBlock
,
BlockWidget
>
blockWidgets
;
private
Hash
Map
<
InputBlock
,
BlockWidget
>
blockWidgets
;
private
Widget
hoverWidget
;
private
Widget
hoverWidget
;
private
WidgetAction
hoverAction
;
private
WidgetAction
hoverAction
;
private
List
<
FigureWidget
>
selectedWidgets
;
private
List
<
FigureWidget
>
selectedWidgets
;
...
@@ -414,7 +414,7 @@ public class DiagramScene extends Scene implements ChangedListener<DiagramViewMo
...
@@ -414,7 +414,7 @@ public class DiagramScene extends Scene implements ChangedListener<DiagramViewMo
this
.
addChild
(
selectLayer
);
this
.
addChild
(
selectLayer
);
this
.
getActions
().
addAction
(
ActionFactory
.
createRectangularSelectAction
(
rectangularSelectDecorator
,
selectLayer
,
rectangularSelectProvider
));
this
.
getActions
().
addAction
(
ActionFactory
.
createRectangularSelectAction
(
rectangularSelectDecorator
,
selectLayer
,
rectangularSelectProvider
));
blockWidgets
=
new
Hash
table
<
InputBlock
,
BlockWidget
>();
blockWidgets
=
new
Hash
Map
<
InputBlock
,
BlockWidget
>();
boolean
b
=
this
.
getUndoRedoEnabled
();
boolean
b
=
this
.
getUndoRedoEnabled
();
this
.
setUndoRedoEnabled
(
false
);
this
.
setUndoRedoEnabled
(
false
);
...
@@ -543,9 +543,9 @@ public class DiagramScene extends Scene implements ChangedListener<DiagramViewMo
...
@@ -543,9 +543,9 @@ public class DiagramScene extends Scene implements ChangedListener<DiagramViewMo
blockLayer
.
removeChildren
();
blockLayer
.
removeChildren
();
blockWidgets
.
clear
();
blockWidgets
.
clear
();
figureWidgets
=
new
Hash
table
<
Figure
,
FigureWidget
>();
figureWidgets
=
new
Hash
Map
<
Figure
,
FigureWidget
>();
slotWidgets
=
new
Hash
table
<
Slot
,
SlotWidget
>();
slotWidgets
=
new
Hash
Map
<
Slot
,
SlotWidget
>();
connectionWidgets
=
new
Hash
table
<
Connection
,
ConnectionWidget
>();
connectionWidgets
=
new
Hash
Map
<
Connection
,
ConnectionWidget
>();
WidgetAction
selectAction
=
new
ExtendedSelectAction
(
selectProvider
);
WidgetAction
selectAction
=
new
ExtendedSelectAction
(
selectProvider
);
Diagram
d
=
getModel
().
getDiagramToView
();
Diagram
d
=
getModel
().
getDiagramToView
();
...
...
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/DiagramViewModel.java
浏览文件 @
fa4624c4
...
@@ -55,6 +55,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -55,6 +55,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
private
FilterChain
filterChain
;
private
FilterChain
filterChain
;
private
FilterChain
sequenceFilterChain
;
private
FilterChain
sequenceFilterChain
;
private
Diagram
diagram
;
private
Diagram
diagram
;
private
ChangedEvent
<
DiagramViewModel
>
groupChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
diagramChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
diagramChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
viewChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
viewChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
viewPropertiesChangedEvent
;
private
ChangedEvent
<
DiagramViewModel
>
viewPropertiesChangedEvent
;
...
@@ -67,6 +68,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -67,6 +68,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
}
}
};
};
@Override
public
DiagramViewModel
copy
()
{
public
DiagramViewModel
copy
()
{
DiagramViewModel
result
=
new
DiagramViewModel
(
group
,
filterChain
,
sequenceFilterChain
);
DiagramViewModel
result
=
new
DiagramViewModel
(
group
,
filterChain
,
sequenceFilterChain
);
result
.
setData
(
this
);
result
.
setData
(
this
);
...
@@ -79,6 +81,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -79,6 +81,7 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
boolean
viewChanged
=
false
;
boolean
viewChanged
=
false
;
boolean
viewPropertiesChanged
=
false
;
boolean
viewPropertiesChanged
=
false
;
boolean
groupChanged
=
(
group
==
newModel
.
group
);
this
.
group
=
newModel
.
group
;
this
.
group
=
newModel
.
group
;
diagramChanged
|=
(
filterChain
!=
newModel
.
filterChain
);
diagramChanged
|=
(
filterChain
!=
newModel
.
filterChain
);
this
.
filterChain
=
newModel
.
filterChain
;
this
.
filterChain
=
newModel
.
filterChain
;
...
@@ -97,6 +100,10 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -97,6 +100,10 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
viewPropertiesChanged
|=
(
showNodeHull
!=
newModel
.
showNodeHull
);
viewPropertiesChanged
|=
(
showNodeHull
!=
newModel
.
showNodeHull
);
this
.
showNodeHull
=
newModel
.
showNodeHull
;
this
.
showNodeHull
=
newModel
.
showNodeHull
;
if
(
groupChanged
)
{
groupChangedEvent
.
fire
();
}
if
(
diagramChanged
)
{
if
(
diagramChanged
)
{
diagramChangedEvent
.
fire
();
diagramChangedEvent
.
fire
();
}
}
...
@@ -143,11 +150,38 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -143,11 +150,38 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
diagramChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
diagramChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
viewChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
viewChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
viewPropertiesChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
viewPropertiesChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
groupChangedEvent
=
new
ChangedEvent
<
DiagramViewModel
>(
this
);
groupChangedEvent
.
addListener
(
groupChangedListener
);
groupChangedEvent
.
fire
();
filterChain
.
getChangedEvent
().
addListener
(
filterChainChangedListener
);
filterChain
.
getChangedEvent
().
addListener
(
filterChainChangedListener
);
sequenceFilterChain
.
getChangedEvent
().
addListener
(
filterChainChangedListener
);
sequenceFilterChain
.
getChangedEvent
().
addListener
(
filterChainChangedListener
);
}
}
private
final
ChangedListener
<
DiagramViewModel
>
groupChangedListener
=
new
ChangedListener
<
DiagramViewModel
>()
{
private
Group
oldGroup
;
public
void
changed
(
DiagramViewModel
source
)
{
if
(
oldGroup
!=
null
)
{
oldGroup
.
getChangedEvent
().
removeListener
(
groupContentChangedListener
);
}
group
.
getChangedEvent
().
addListener
(
groupContentChangedListener
);
oldGroup
=
group
;
}
};
private
final
ChangedListener
<
Group
>
groupContentChangedListener
=
new
ChangedListener
<
Group
>()
{
public
void
changed
(
Group
source
)
{
assert
source
==
group
;
setPositions
(
calculateStringList
(
source
));
setSelectedNodes
(
selectedNodes
);
}
};
public
ChangedEvent
<
DiagramViewModel
>
getDiagramChangedEvent
()
{
public
ChangedEvent
<
DiagramViewModel
>
getDiagramChangedEvent
()
{
return
diagramChangedEvent
;
return
diagramChangedEvent
;
}
}
...
@@ -268,7 +302,10 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
...
@@ -268,7 +302,10 @@ public class DiagramViewModel extends RangeSliderModel implements ChangedListene
}
}
public
InputGraph
getSecondGraph
()
{
public
InputGraph
getSecondGraph
()
{
return
group
.
getGraphs
().
get
(
getSecondPosition
());
List
<
InputGraph
>
graphs
=
group
.
getGraphs
();
if
(
graphs
.
size
()
>=
getSecondPosition
())
return
group
.
getGraphs
().
get
(
getSecondPosition
());
return
getFirstGraph
();
}
}
public
void
selectGraph
(
InputGraph
g
)
{
public
void
selectGraph
(
InputGraph
g
)
{
...
...
src/share/tools/IdealGraphVisualizer/View/src/com/sun/hotspot/igv/view/FindPanel.java
浏览文件 @
fa4624c4
...
@@ -67,7 +67,7 @@ class FindPanel extends JPanel implements KeyListener {
...
@@ -67,7 +67,7 @@ class FindPanel extends JPanel implements KeyListener {
for
(
Figure
f
:
figures
)
{
for
(
Figure
f
:
figures
)
{
Properties
prop
=
f
.
getProperties
();
Properties
prop
=
f
.
getProperties
();
for
(
Property
p
:
prop
.
getProperties
()
)
{
for
(
Property
p
:
prop
)
{
if
(!
propertyNames
.
contains
(
p
.
getName
()))
{
if
(!
propertyNames
.
contains
(
p
.
getName
()))
{
propertyNames
.
add
(
p
.
getName
());
propertyNames
.
add
(
p
.
getName
());
}
}
...
...
src/share/tools/IdealGraphVisualizer/nbproject/platform.properties
浏览文件 @
fa4624c4
# Deprecated since 5.0u1; for compatibility with 5.0:
# Deprecated since 5.0u1; for compatibility with 5.0:
disabled.clusters
=
\
disabled.clusters
=
\
apisupport1,
\
apisupport1,
\
gsf1,
\
harness,
\
harness,
\
ide
8
,
\
ide
9
,
\
java
1
,
\
java
2
,
\
nb6.
0
,
\
nb6.
1
,
\
profiler
2
profiler
3
disabled.modules
=
\
disabled.modules
=
\
org.netbeans.core.execution,
\
org.netbeans.core.execution,
\
org.netbeans.core.multiview,
\
org.netbeans.core.multiview,
\
org.netbeans.core.output2,
\
org.netbeans.core.output2,
\
org.netbeans.modules.applemenu,
\
org.netbeans.modules.autoupdate.services,
\
org.netbeans.modules.autoupdate.services,
\
org.netbeans.modules.autoupdate.ui,
\
org.netbeans.modules.autoupdate.ui,
\
org.netbeans.modules.core.kit,
\
org.netbeans.modules.core.kit,
\
...
@@ -24,6 +24,6 @@ disabled.modules=\
...
@@ -24,6 +24,6 @@ disabled.modules=\
org.openide.execution,
\
org.openide.execution,
\
org.openide.util.enumerations
org.openide.util.enumerations
enabled.clusters
=
\
enabled.clusters
=
\
platform
7
platform
8
nbjdk.active
=
default
nbjdk.active
=
default
nbplatform.active
=
default
nbplatform.active
=
default
src/share/tools/IdealGraphVisualizer/nbproject/project.properties
浏览文件 @
fa4624c4
...
@@ -15,7 +15,6 @@ modules=\
...
@@ -15,7 +15,6 @@ modules=\
${project.com.sun.hotspot.igv.difference}:
\
${project.com.sun.hotspot.igv.difference}:
\
${project.com.sun.hotspot.igv.settings}:
\
${project.com.sun.hotspot.igv.settings}:
\
${project.com.sun.hotspot.igv.util}:
\
${project.com.sun.hotspot.igv.util}:
\
${project.com.sun.hotspot.igv.rhino}:
\
${project.com.sun.hotspot.igv.svg}:
\
${project.com.sun.hotspot.igv.svg}:
\
${project.com.sun.hotspot.connection}:
\
${project.com.sun.hotspot.connection}:
\
${project.com.sun.hotspot.igv.servercompilerscheduler}:
\
${project.com.sun.hotspot.igv.servercompilerscheduler}:
\
...
@@ -31,10 +30,10 @@ project.com.sun.hotspot.igv.filterwindow=FilterWindow
...
@@ -31,10 +30,10 @@ project.com.sun.hotspot.igv.filterwindow=FilterWindow
project.com.sun.hotspot.igv.graph
=
Graph
project.com.sun.hotspot.igv.graph
=
Graph
project.com.sun.hotspot.igv.hierarchicallayout
=
HierarchicalLayout
project.com.sun.hotspot.igv.hierarchicallayout
=
HierarchicalLayout
project.com.sun.hotspot.igv.layout
=
Layout
project.com.sun.hotspot.igv.layout
=
Layout
project.com.sun.hotspot.igv.rhino
=
RhinoScriptEngineProxy
project.com.sun.hotspot.igv.servercompilerscheduler
=
ServerCompiler
project.com.sun.hotspot.igv.servercompilerscheduler
=
ServerCompiler
project.com.sun.hotspot.igv.settings
=
Settings
project.com.sun.hotspot.igv.settings
=
Settings
project.com.sun.hotspot.igv.svg
=
BatikSVGProxy
project.com.sun.hotspot.igv.svg
=
BatikSVGProxy
project.com.sun.hotspot.igv.view
=
View
project.com.sun.hotspot.igv.view
=
View
project.com.sun.hotspot.igv.util
=
Util
project.com.sun.hotspot.igv.util
=
Util
run.args
=
-server -J-Xms64m -J-Xmx512m -J-da
run.args
=
-J-server -J-Xms64m -J-Xmx1g -J-da
run.args.extra
=
-J-server -J-Xms64m -J-Xmx1g -J-da
src/share/vm/adlc/output_h.cpp
浏览文件 @
fa4624c4
...
@@ -377,7 +377,7 @@ static uint dump_spec_constant(FILE *fp, const char *ideal_type, uint i, Operand
...
@@ -377,7 +377,7 @@ static uint dump_spec_constant(FILE *fp, const char *ideal_type, uint i, Operand
++
i
;
++
i
;
}
}
else
if
(
!
strcmp
(
ideal_type
,
"ConN"
))
{
else
if
(
!
strcmp
(
ideal_type
,
"ConN"
))
{
fprintf
(
fp
,
" _c%d->dump
(
);
\n
"
,
i
);
fprintf
(
fp
,
" _c%d->dump
_on(st
);
\n
"
,
i
);
++
i
;
++
i
;
}
}
else
if
(
!
strcmp
(
ideal_type
,
"ConL"
))
{
else
if
(
!
strcmp
(
ideal_type
,
"ConL"
))
{
...
...
src/share/vm/opto/compile.cpp
浏览文件 @
fa4624c4
...
@@ -551,7 +551,7 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
...
@@ -551,7 +551,7 @@ Compile::Compile( ciEnv* ci_env, C2Compiler* compiler, ciMethod* target, int osr
rethrow_exceptions
(
kit
.
transfer_exceptions_into_jvms
());
rethrow_exceptions
(
kit
.
transfer_exceptions_into_jvms
());
}
}
print_method
(
"Before RemoveUseless"
);
print_method
(
"Before RemoveUseless"
,
3
);
// Remove clutter produced by parsing.
// Remove clutter produced by parsing.
if
(
!
failing
())
{
if
(
!
failing
())
{
...
...
src/share/vm/opto/type.cpp
浏览文件 @
fa4624c4
...
@@ -3541,7 +3541,7 @@ intptr_t TypeNarrowOop::get_con() const {
...
@@ -3541,7 +3541,7 @@ intptr_t TypeNarrowOop::get_con() const {
#ifndef PRODUCT
#ifndef PRODUCT
void
TypeNarrowOop
::
dump2
(
Dict
&
d
,
uint
depth
,
outputStream
*
st
)
const
{
void
TypeNarrowOop
::
dump2
(
Dict
&
d
,
uint
depth
,
outputStream
*
st
)
const
{
tty
->
print
(
"narrowoop: "
);
st
->
print
(
"narrowoop: "
);
_ooptype
->
dump2
(
d
,
depth
,
st
);
_ooptype
->
dump2
(
d
,
depth
,
st
);
}
}
#endif
#endif
...
...
src/share/vm/runtime/frame.cpp
浏览文件 @
fa4624c4
...
@@ -83,12 +83,12 @@ void RegisterMap::print_on(outputStream* st) const {
...
@@ -83,12 +83,12 @@ void RegisterMap::print_on(outputStream* st) const {
intptr_t
*
src
=
(
intptr_t
*
)
location
(
r
);
intptr_t
*
src
=
(
intptr_t
*
)
location
(
r
);
if
(
src
!=
NULL
)
{
if
(
src
!=
NULL
)
{
r
->
print
(
);
r
->
print
_on
(
st
);
tty
->
print
(
" ["
INTPTR_FORMAT
"] = "
,
src
);
st
->
print
(
" ["
INTPTR_FORMAT
"] = "
,
src
);
if
(((
uintptr_t
)
src
&
(
sizeof
(
*
src
)
-
1
))
!=
0
)
{
if
(((
uintptr_t
)
src
&
(
sizeof
(
*
src
)
-
1
))
!=
0
)
{
tty
->
print_cr
(
"<misaligned>"
);
st
->
print_cr
(
"<misaligned>"
);
}
else
{
}
else
{
tty
->
print_cr
(
INTPTR_FORMAT
,
*
src
);
st
->
print_cr
(
INTPTR_FORMAT
,
*
src
);
}
}
}
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录