Cross Reference: c1_Canonicalizer.hpp
xref
: /
openjdk7
/
hotspot
/
src
/
share
/
vm
/
c1
/
c1_Canonicalizer.hpp
Home
History
Annotate
Line#
Navigate
Download
Search
only in
./
0
N/A
/*
2051
N/A
* Copyright (c) 1999, 2011, Oracle
and
/
or
its affiliates. All rights reserved.
0
N/A
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0
N/A
*
0
N/A
* This code is free software; you can redistribute it
and
/
or
modify it
0
N/A
* under the terms of the GNU General Public License version 2 only, as
0
N/A
* published by the Free Software Foundation.
0
N/A
*
0
N/A
* This code is distributed in the hope that it will be useful, but WITHOUT
0
N/A
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0
N/A
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0
N/A
* version 2 for more details (a copy is included in the LICENSE file that
0
N/A
* accompanied this code).
0
N/A
*
0
N/A
* You should have received a copy of the GNU General Public License version
0
N/A
* 2 along with this work; if not, write to the Free Software Foundation,
0
N/A
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0
N/A
*
1472
N/A
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
1472
N/A
* or visit
www.oracle.c
om if you need additional information or have any
1472
N/A
* questions.
0
N/A
*
0
N/A
*/
0
N/A
1879
N/A
#
ifndef
SHARE_VM_C1_C1_CANONICALIZER_HPP
1879
N/A
#
define
SHARE_VM_C1_C1_CANONICALIZER_HPP
1879
N/A
1879
N/A
#
include
"
c1
/
c1_Instruction.hpp
"
1879
N/A
0
N/A
class
Canonicalizer
:
InstructionVisitor
{
0
N/A
private
:
1703
N/A
Compilation
*
_compilation
;
0
N/A
Instruction
*
_canonical
;
0
N/A
int
_bci
;
0
N/A
1703
N/A
Compilation
*
compilation
() {
return
_compilation
; }
0
N/A
void
set_canonical
(
Value
x);
0
N/A
void
set_bci
(
int
bci
) {
_bci
=
bci
; }
0
N/A
void
set_constant
(
jint
x) {
set_canonical
(
new
Constant
(
new
IntConstant
(x))); }
0
N/A
void
set_constant
(
jlong
x) {
set_canonical
(
new
Constant
(
new
LongConstant
(x))); }
0
N/A
void
set_constant
(
jfloat
x) {
set_canonical
(
new
Constant
(
new
FloatConstant
(x))); }
0
N/A
void
set_constant
(
jdouble
x) {
set_canonical
(
new
Constant
(
new
DoubleConstant
(x))); }
0
N/A
void
move_const_to_right
(
Op2
* x);
0
N/A
void
do_Op2
(
Op2
* x);
0
N/A
void
do_UnsafeRawOp
(
UnsafeRawOp
* x);
0
N/A
0
N/A
void
unsafe_raw_match
(
UnsafeRawOp
* x,
0
N/A
Instruction
**
base
,
0
N/A
Instruction
**
index
,
0
N/A
int
*
scale
);
0
N/A
0
N/A
public
:
1703
N/A
Canonicalizer
(
Compilation
* c,
Value
x,
int
bci
) :
_compilation
(c),
_canonical
(x),
_bci
(
bci
) {
2888
N/A
NOT_PRODUCT
(x->
set_printable_bci
(
bci
));
1703
N/A
if
(
CanonicalizeNodes
) x->
visit
(
this
);
1703
N/A
}
0
N/A
Value
canonical
()
const
{
return
_canonical
; }
0
N/A
int
bci
()
const
{
return
_bci
; }
0
N/A
0
N/A
virtual
void
do_Phi
(
Phi
* x);
0
N/A
virtual
void
do_Constant
(
Constant
* x);
0
N/A
virtual
void
do_Local
(
Local
* x);
0
N/A
virtual
void
do_LoadField
(
LoadField
* x);
0
N/A
virtual
void
do_StoreField
(
StoreField
* x);
0
N/A
virtual
void
do_ArrayLength
(
ArrayLength
* x);
0
N/A
virtual
void
do_LoadIndexed
(
LoadIndexed
* x);
0
N/A
virtual
void
do_StoreIndexed
(
StoreIndexed
* x);
0
N/A
virtual
void
do_NegateOp
(
NegateOp
* x);
0
N/A
virtual
void
do_ArithmeticOp
(
ArithmeticOp
* x);
0
N/A
virtual
void
do_ShiftOp
(
ShiftOp
* x);
0
N/A
virtual
void
do_LogicOp
(
LogicOp
* x);
0
N/A
virtual
void
do_CompareOp
(
CompareOp
* x);
0
N/A
virtual
void
do_IfOp
(
IfOp
* x);
0
N/A
virtual
void
do_IfInstanceOf
(
IfInstanceOf
* x);
0
N/A
virtual
void
do_Convert
(
Convert
* x);
0
N/A
virtual
void
do_NullCheck
(
NullCheck
* x);
3932
N/A
virtual
void
do_TypeCast
(
TypeCast
* x);
0
N/A
virtual
void
do_Invoke
(
Invoke
* x);
0
N/A
virtual
void
do_NewInstance
(
NewInstance
* x);
0
N/A
virtual
void
do_NewTypeArray
(
NewTypeArray
* x);
0
N/A
virtual
void
do_NewObjectArray
(
NewObjectArray
* x);
0
N/A
virtual
void
do_NewMultiArray
(
NewMultiArray
* x);
0
N/A
virtual
void
do_CheckCast
(
CheckCast
* x);
0
N/A
virtual
void
do_InstanceOf
(
InstanceOf
* x);
0
N/A
virtual
void
do_MonitorEnter
(
MonitorEnter
* x);
0
N/A
virtual
void
do_MonitorExit
(
MonitorExit
* x);
0
N/A
virtual
void
do_Intrinsic
(
Intrinsic
* x);
0
N/A
virtual
void
do_BlockBegin
(
BlockBegin
* x);
0
N/A
virtual
void
do_Goto
(
Goto
* x);
0
N/A
virtual
void
do_If
(
If
* x);
0
N/A
virtual
void
do_TableSwitch
(
TableSwitch
* x);
0
N/A
virtual
void
do_LookupSwitch
(
LookupSwitch
* x);
0
N/A
virtual
void
do_Return
(
Return
* x);
0
N/A
virtual
void
do_Throw
(
Throw
* x);
0
N/A
virtual
void
do_Base
(
Base
* x);
0
N/A
virtual
void
do_OsrEntry
(
OsrEntry
* x);
0
N/A
virtual
void
do_ExceptionObject
(
ExceptionObject
* x);
0
N/A
virtual
void
do_RoundFP
(
RoundFP
* x);
0
N/A
virtual
void
do_UnsafeGetRaw
(
UnsafeGetRaw
* x);
0
N/A
virtual
void
do_UnsafePutRaw
(
UnsafePutRaw
* x);
0
N/A
virtual
void
do_UnsafeGetObject
(
UnsafeGetObject
* x);
0
N/A
virtual
void
do_UnsafePutObject
(
UnsafePutObject
* x);
4015
N/A
virtual
void
do_UnsafeGetAndSetObject
(
UnsafeGetAndSetObject
* x);
0
N/A
virtual
void
do_UnsafePrefetchRead
(
UnsafePrefetchRead
* x);
0
N/A
virtual
void
do_UnsafePrefetchWrite
(
UnsafePrefetchWrite
* x);
0
N/A
virtual
void
do_ProfileCall
(
ProfileCall
* x);
Error!
Full Search
Definition
Symbol
File Path
History
In Project(s)
select all
invert selection
ast
bind-9.11.3
bind-9.6-ESV-R11
dovecot
ec
forgerock
gkrellm-k10addon
glassfish
glassfish-3.1.2
glassfish.hg
hets
httpd
illumos-gate
inkscape
javamail
k10sensor
libmicro
lucene-3.6.0
lxc
ontohub
opengrok
opengrok-jel
opengrok-sun
openjdk7
osnet-11
owl-s
pkg
scfdot
sendmail
solaris-desktop
solaris-userland
solaris-userland-s11u3
solaris-x11-s11
solaris-x11-s12
sssd
sssd-io
systemd
vbox
yui3
Search
Clear
Help
There was an error!
null
java.lang.NullPointerException