hotspot/src/share/vm/opto/classes.hpp
author roland
Thu, 20 Sep 2012 16:49:17 +0200
changeset 13886 8d82c4dfa722
parent 13485 6c7faa516fc6
child 13930 8df570f94294
permissions -rw-r--r--
7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement() Summary: use shorter instruction sequences for atomic add and atomic exchange when possible. Reviewed-by: kvn, jrose
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     1
/*
13104
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
     2
 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     4
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
489c9b5090e2 Initial load
duke
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
489c9b5090e2 Initial load
duke
parents:
diff changeset
     7
 * published by the Free Software Foundation.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     8
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
489c9b5090e2 Initial load
duke
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
489c9b5090e2 Initial load
duke
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
489c9b5090e2 Initial load
duke
parents:
diff changeset
    13
 * accompanied this code).
489c9b5090e2 Initial load
duke
parents:
diff changeset
    14
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
489c9b5090e2 Initial load
duke
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    18
 *
5547
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 5352
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 5352
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 5352
diff changeset
    21
 * questions.
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    22
 *
489c9b5090e2 Initial load
duke
parents:
diff changeset
    23
 */
489c9b5090e2 Initial load
duke
parents:
diff changeset
    24
489c9b5090e2 Initial load
duke
parents:
diff changeset
    25
// The giant table of Node classes.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    26
// One entry per class, sorted by class name.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    27
489c9b5090e2 Initial load
duke
parents:
diff changeset
    28
macro(AbsD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    29
macro(AbsF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    30
macro(AbsI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    31
macro(AddD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    32
macro(AddF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    33
macro(AddI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    34
macro(AddL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    35
macro(AddP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    36
macro(Allocate)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    37
macro(AllocateArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    38
macro(AndI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    39
macro(AndL)
595
a2be4c89de81 6695049: (coll) Create an x86 intrinsic for Arrays.equals
rasbold
parents: 590
diff changeset
    40
macro(AryEq)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    41
macro(AtanD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    42
macro(Binary)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    43
macro(Bool)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    44
macro(BoxLock)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    45
macro(ReverseBytesI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    46
macro(ReverseBytesL)
5352
cee8f7acb7bc 6946040: add intrinsic for short and char reverseBytes
never
parents: 2862
diff changeset
    47
macro(ReverseBytesUS)
cee8f7acb7bc 6946040: add intrinsic for short and char reverseBytes
never
parents: 2862
diff changeset
    48
macro(ReverseBytesS)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    49
macro(CProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    50
macro(CallDynamicJava)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    51
macro(CallJava)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    52
macro(CallLeaf)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    53
macro(CallLeafNoFP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    54
macro(CallRuntime)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    55
macro(CallStaticJava)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    56
macro(CastII)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    57
macro(CastX2P)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    58
macro(CastP2X)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    59
macro(CastPP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    60
macro(Catch)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    61
macro(CatchProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    62
macro(CheckCastPP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    63
macro(ClearArray)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    64
macro(ConstraintCast)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    65
macro(CMoveD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    66
macro(CMoveF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    67
macro(CMoveI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    68
macro(CMoveL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    69
macro(CMoveP)
590
2954744d7bba 6703890: Compressed Oops: add LoadNKlass node to generate narrow oops (32-bits) compare instructions
kvn
parents: 392
diff changeset
    70
macro(CMoveN)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
    71
macro(CmpN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    72
macro(CmpD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    73
macro(CmpD3)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    74
macro(CmpF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    75
macro(CmpF3)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    76
macro(CmpI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    77
macro(CmpL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    78
macro(CmpL3)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    79
macro(CmpLTMask)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    80
macro(CmpP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    81
macro(CmpU)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    82
macro(CompareAndSwapI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    83
macro(CompareAndSwapL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    84
macro(CompareAndSwapP)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
    85
macro(CompareAndSwapN)
13886
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    86
macro(GetAndAddI)
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    87
macro(GetAndAddL)
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    88
macro(GetAndSetI)
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    89
macro(GetAndSetL)
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    90
macro(GetAndSetP)
8d82c4dfa722 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
roland
parents: 13485
diff changeset
    91
macro(GetAndSetN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    92
macro(Con)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
    93
macro(ConN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    94
macro(ConD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    95
macro(ConF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    96
macro(ConI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    97
macro(ConL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    98
macro(ConP)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    99
macro(Conv2B)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   100
macro(ConvD2F)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   101
macro(ConvD2I)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   102
macro(ConvD2L)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   103
macro(ConvF2D)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   104
macro(ConvF2I)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   105
macro(ConvF2L)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   106
macro(ConvI2D)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   107
macro(ConvI2F)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   108
macro(ConvI2L)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   109
macro(ConvL2D)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   110
macro(ConvL2F)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   111
macro(ConvL2I)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   112
macro(CosD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   113
macro(CountedLoop)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   114
macro(CountedLoopEnd)
2862
fad636edf18f 6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
twisti
parents: 2348
diff changeset
   115
macro(CountLeadingZerosI)
fad636edf18f 6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
twisti
parents: 2348
diff changeset
   116
macro(CountLeadingZerosL)
fad636edf18f 6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
twisti
parents: 2348
diff changeset
   117
macro(CountTrailingZerosI)
fad636edf18f 6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}()
twisti
parents: 2348
diff changeset
   118
macro(CountTrailingZerosL)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   119
macro(CreateEx)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
   120
macro(DecodeN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   121
macro(DivD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   122
macro(DivF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   123
macro(DivI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   124
macro(DivL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   125
macro(DivMod)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   126
macro(DivModI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   127
macro(DivModL)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
   128
macro(EncodeP)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   129
macro(ExpD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   130
macro(FastLock)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   131
macro(FastUnlock)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   132
macro(Goto)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   133
macro(Halt)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   134
macro(If)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   135
macro(IfFalse)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   136
macro(IfTrue)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   137
macro(Initialize)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   138
macro(JProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   139
macro(Jump)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   140
macro(JumpProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   141
macro(LShiftI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   142
macro(LShiftL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   143
macro(LoadB)
2150
0d91d17158cc 6797305: Add LoadUB and LoadUI opcode class
twisti
parents: 2022
diff changeset
   144
macro(LoadUB)
2022
28ce8115a91d 6796746: rename LoadC (char) opcode class to LoadUS (unsigned short)
twisti
parents: 1500
diff changeset
   145
macro(LoadUS)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   146
macro(LoadD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   147
macro(LoadD_unaligned)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   148
macro(LoadF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   149
macro(LoadI)
2150
0d91d17158cc 6797305: Add LoadUB and LoadUI opcode class
twisti
parents: 2022
diff changeset
   150
macro(LoadUI2L)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   151
macro(LoadKlass)
590
2954744d7bba 6703890: Compressed Oops: add LoadNKlass node to generate narrow oops (32-bits) compare instructions
kvn
parents: 392
diff changeset
   152
macro(LoadNKlass)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   153
macro(LoadL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   154
macro(LoadL_unaligned)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   155
macro(LoadPLocked)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   156
macro(LoadP)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
   157
macro(LoadN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   158
macro(LoadRange)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   159
macro(LoadS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   160
macro(Lock)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   161
macro(LogD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   162
macro(Log10D)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   163
macro(Loop)
9446
748a37b25d10 5091921: Sign flip issues in loop optimizer
kvn
parents: 5547
diff changeset
   164
macro(LoopLimit)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   165
macro(Mach)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   166
macro(MachProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   167
macro(MaxI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   168
macro(MemBarAcquire)
10262
c5f62d314bee 7074017: Introduce MemBarAcquireLock/MemBarReleaseLock nodes for monitor enter/exit code paths
roland
parents: 9446
diff changeset
   169
macro(MemBarAcquireLock)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   170
macro(MemBarCPUOrder)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   171
macro(MemBarRelease)
10262
c5f62d314bee 7074017: Introduce MemBarAcquireLock/MemBarReleaseLock nodes for monitor enter/exit code paths
roland
parents: 9446
diff changeset
   172
macro(MemBarReleaseLock)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   173
macro(MemBarVolatile)
11431
5ca3a19e559a 7121140: Allocation paths require explicit memory synchronization operations for RMO systems
roland
parents: 10267
diff changeset
   174
macro(MemBarStoreStore)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   175
macro(MergeMem)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   176
macro(MinI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   177
macro(ModD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   178
macro(ModF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   179
macro(ModI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   180
macro(ModL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   181
macro(MoveI2F)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   182
macro(MoveF2I)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   183
macro(MoveL2D)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   184
macro(MoveD2L)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   185
macro(MulD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   186
macro(MulF)
392
0b3167e2f2de 6603011: RFE: Optimize long division
rasbold
parents: 360
diff changeset
   187
macro(MulHiL)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   188
macro(MulI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   189
macro(MulL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   190
macro(Multi)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   191
macro(NegD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   192
macro(NegF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   193
macro(NeverBranch)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   194
macro(Opaque1)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   195
macro(Opaque2)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   196
macro(OrI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   197
macro(OrL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   198
macro(PCTable)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   199
macro(Parm)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   200
macro(PartialSubtypeCheck)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   201
macro(Phi)
2255
54abdf3e1055 6378821: bitCount() should use POPC on SPARC processors and AMD+10h
twisti
parents: 2150
diff changeset
   202
macro(PopCountI)
54abdf3e1055 6378821: bitCount() should use POPC on SPARC processors and AMD+10h
twisti
parents: 2150
diff changeset
   203
macro(PopCountL)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   204
macro(PowD)
10267
8bdeec886dc4 7079329: Adjust allocation prefetching for T4
kvn
parents: 10262
diff changeset
   205
macro(PrefetchAllocation)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   206
macro(PrefetchRead)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   207
macro(PrefetchWrite)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   208
macro(Proj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   209
macro(RShiftI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   210
macro(RShiftL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   211
macro(Region)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   212
macro(Rethrow)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   213
macro(Return)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   214
macro(Root)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   215
macro(RoundDouble)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   216
macro(RoundFloat)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   217
macro(SafePoint)
236
9a04268c8eea 6671807: (Escape Analysis) Add new ideal node to represent the state of a scalarized object at a safepoint
kvn
parents: 1
diff changeset
   218
macro(SafePointScalarObject)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   219
macro(SCMemProj)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   220
macro(SinD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   221
macro(SqrtD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   222
macro(Start)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   223
macro(StartOSR)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   224
macro(StoreB)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   225
macro(StoreC)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   226
macro(StoreCM)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   227
macro(StorePConditional)
1500
bea9a90f3e8f 6462850: generate biased locking code in C2 ideal graph
kvn
parents: 670
diff changeset
   228
macro(StoreIConditional)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   229
macro(StoreLConditional)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   230
macro(StoreD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   231
macro(StoreF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   232
macro(StoreI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   233
macro(StoreL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   234
macro(StoreP)
360
21d113ecbf6a 6420645: Create a vm that uses compressed oops for up to 32gb heapsizes
coleenp
parents: 236
diff changeset
   235
macro(StoreN)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   236
macro(StrComp)
2348
4e71ed4c2709 6761600: Use sse 4.2 in intrinsics
cfang
parents: 2259
diff changeset
   237
macro(StrEquals)
4e71ed4c2709 6761600: Use sse 4.2 in intrinsics
cfang
parents: 2259
diff changeset
   238
macro(StrIndexOf)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   239
macro(SubD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   240
macro(SubF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   241
macro(SubI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   242
macro(SubL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   243
macro(TailCall)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   244
macro(TailJump)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   245
macro(TanD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   246
macro(ThreadLocal)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   247
macro(Unlock)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   248
macro(URShiftI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   249
macro(URShiftL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   250
macro(XorI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   251
macro(XorL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   252
macro(Vector)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   253
macro(AddVB)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   254
macro(AddVS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   255
macro(AddVI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   256
macro(AddVL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   257
macro(AddVF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   258
macro(AddVD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   259
macro(SubVB)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   260
macro(SubVS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   261
macro(SubVI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   262
macro(SubVL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   263
macro(SubVF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   264
macro(SubVD)
13485
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   265
macro(MulVS)
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   266
macro(MulVI)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   267
macro(MulVF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   268
macro(MulVD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   269
macro(DivVF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   270
macro(DivVD)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   271
macro(LShiftVB)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   272
macro(LShiftVS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   273
macro(LShiftVI)
13485
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   274
macro(LShiftVL)
13104
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   275
macro(RShiftVB)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   276
macro(RShiftVS)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   277
macro(RShiftVI)
13485
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   278
macro(RShiftVL)
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   279
macro(URShiftVB)
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   280
macro(URShiftVS)
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   281
macro(URShiftVI)
6c7faa516fc6 6340864: Implement vectorization optimizations in hotspot-server
kvn
parents: 13104
diff changeset
   282
macro(URShiftVL)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   283
macro(AndV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   284
macro(OrV)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   285
macro(XorV)
13104
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   286
macro(LoadVector)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   287
macro(StoreVector)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   288
macro(Pack)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   289
macro(PackB)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   290
macro(PackS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   291
macro(PackI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   292
macro(PackL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   293
macro(PackF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   294
macro(PackD)
13104
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   295
macro(Pack2L)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   296
macro(Pack2D)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   297
macro(ReplicateB)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   298
macro(ReplicateS)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   299
macro(ReplicateI)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   300
macro(ReplicateL)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   301
macro(ReplicateF)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   302
macro(ReplicateD)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   303
macro(Extract)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   304
macro(ExtractB)
13104
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   305
macro(ExtractUB)
657b387034fb 7119644: Increase superword's vector size up to 256 bits
kvn
parents: 12957
diff changeset
   306
macro(ExtractC)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   307
macro(ExtractS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   308
macro(ExtractI)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   309
macro(ExtractL)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   310
macro(ExtractF)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   311
macro(ExtractD)