Created
March 22, 2009 22:52
-
-
Save jruby/83328 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{method} | |
- klass: {other class} | |
- method holder: 'bench/language/bench_method_dispatch_only' | |
- constants: 0x06b82a64{constant pool} | |
- access: 0xc1000001 public | |
- name: 'method__1$RUBY$invoking' | |
- signature: '(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;' | |
- max stack: 8 | |
- max locals: 14 | |
- size of params: 4 | |
- method size: 20 | |
- vtable index: 23 | |
- code size: 2625 | |
- code start: 0xb15f9c84 | |
- code end (excl): 0xb15fa6c5 | |
- method data: 0xb17168c0 | |
- checked ex length: 0 | |
- linenumber start: 0xb15fa6c5 | |
- localvar length: 1 | |
- localvar start: 0xb15fa6fa | |
# | |
# org/jruby/runtime/builtin/IRubyObject * ( bench/language/bench_method_dispatch_only:NotNull *, org/jruby/runtime/ThreadContext:exact *, org/jruby/runtime/builtin/IRubyObject *, org/jruby/runtime/Block:exact * ) | |
# | |
#r000 ecx : parm 0: bench/language/bench_method_dispatch_only:NotNull * | |
#r005 edx : parm 1: org/jruby/runtime/ThreadContext:exact * | |
#r047 esp+84: parm 3: org/jruby/runtime/Block:exact * | |
#r046 esp+80: parm 2: org/jruby/runtime/builtin/IRubyObject * | |
# -- Old esp -- Framesize: 80 -- | |
#r045 esp+76: return address | |
#r044 esp+72: pad2, in_preserve | |
#r043 esp+68: pad2, in_preserve | |
#r042 esp+64: Fixed slot 0 | |
#r063 esp+60: spill | |
#r062 esp+56: spill | |
#r061 esp+52: spill | |
#r060 esp+48: spill | |
#r059 esp+44: spill | |
#r058 esp+40: spill | |
#r057 esp+36: spill | |
#r056 esp+32: spill | |
#r055 esp+28: spill | |
#r054 esp+24: spill | |
#r053 esp+20: spill | |
#r052 esp+16: spill | |
#r051 esp+12: outgoing argument | |
#r050 esp+ 8: outgoing argument | |
#r049 esp+ 4: outgoing argument | |
#r048 esp+ 0: outgoing argument | |
# | |
000 N23060: # B1 <- BLOCK HEAD IS JUNK Freq: 2 | |
000 CMP EAX,[ECX+4] # Inline cache check | |
JNE SharedRuntime::handle_ic_miss_stub | |
NOP | |
NOP | |
NOP | |
000 | |
00c B1: # B2014 B2 <- BLOCK HEAD IS JUNK Freq: 2 | |
00c # stack bang | |
PUSHL EBP | |
SUB ESP,72 # Create frame | |
01a MOV [ESP + #44],ECX | |
01e MOV [ESP + #40],EDX | |
022 MOV EBP,[EDX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
025 NullCheck EDX | |
025 | |
025 B2: # B2013 B3 <- B1 Freq: 2 | |
025 MOV EBX,[EBP + #124] ! Field org/jruby/Ruby.nilObject | |
028 NullCheck EBP | |
028 | |
028 B3: # B2011 B4 <- B2 Freq: 2 | |
028 #checkcastPP of EBX | |
028 MOV ECX,[ESP + #80] | |
02c MOV [ESP + #52],EBP | |
030 MOV [ESP + #84],EBX | |
034 MOV [ESP + #24],EBX | |
038 NOP # 2 bytes pad for loops and calls | |
03a MOV EAX,(oop)-1 | |
CALL,dynamic org.jruby.runtime.builtin.IRubyObject::getMetaClass | |
# bench.language.bench_method_dispatch_only::method__1$RUBY$invoking @ bci:14 L[0]=esp + #44 L[1]=esp + #40 L[2]=esp + #80 L[3]=_ L[4]=_ L[5]=EBP L[6]=_ L[7]=esp + #84 L[8]=_ L[9]=_ L[10]=_ L[11]=_ L[12]=_ L[13]=_ | |
# AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
044 | |
044 B4: # B2010 B5 <- B3 Freq: 1.99996 | |
# Block is sole successor of call | |
044 MOV [ESP + #48],EAX | |
048 MOV ECX,EBP | |
04a NOP # 1 bytes pad for loops and calls | |
04b CALL,static org.jruby.RubyFixnum::zero | |
# bench.language.bench_method_dispatch_only::method__1$RUBY$invoking @ bci:27 L[0]=esp + #44 L[1]=esp + #40 L[2]=esp + #80 L[3]=_ L[4]=_ L[5]=EBP L[6]=_ L[7]=esp + #84 L[8]=_ L[9]=_ L[10]=esp + #48 L[11]=_ L[12]=_ L[13]=_ | |
# AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
050 | |
050 B5: # B2009 B6 <- B4 Freq: 1.99992 | |
# Block is sole successor of call | |
050 MOV [ESP + #32],EAX | |
054 MOV EBX,[ESP + #44] | |
058 MOV EBP,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
05b MOV ECX,[EBP + #8] | |
05e NullCheck EBP | |
05e | |
05e B6: # B2008 B7 <- B5 Freq: 1.99991 | |
05e CMPu ECX,#102 | |
061 Jle,u B2008 P=0.000001 C=-1.000000 | |
061 | |
067 B7: # B2007 B8 <- B6 Freq: 1.99991 | |
067 MOV EBX,[EBP + #420] | |
06d MOV EBP,[EBX + #4] | |
070 NullCheck EBX | |
070 | |
070 B8: # B2006 B9 <- B7 Freq: 1.99991 | |
070 CMPu EBP,precise klass org/jruby/runtime/callsite/LtCallSite: 0x0892c028:Constant:exact * | |
076 Jne,u B2006 P=0.000000 C=-1.000000 | |
076 | |
07c B9: # B2005 B10 <- B8 Freq: 1.99991 | |
07c MOV EBP,EAX | |
07e TEST EAX,EAX | |
080 Jeq B2005 P=0.000001 C=-1.000000 | |
080 | |
086 B10: # B2004 B11 <- B9 Freq: 1.99991 | |
086 #checkcastPP of EBP | |
086 MOV [ESP + #56],EBP | |
08a #checkcastPP of EBX | |
08a MOV EBP,[EBP + #12] ! Field org/jruby/RubyBasicObject.metaClass | |
08d MOV [ESP + #60],EBP | |
091 MOV EAX,[EBX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
094 MEMBAR-acquire | |
094 MOV ECX,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
097 NullCheck EAX | |
097 | |
097 B11: # B2003 B12 <- B10 Freq: 1.99991 | |
097 MOV EBP,[EBP + #56] ! Field org/jruby/RubyModule.generation | |
09a NullCheck EBP | |
09a | |
09a B12: # B2002 B13 <- B11 Freq: 1.9999 | |
09a MOV EDI,[EBP + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
09d NullCheck EBP | |
09d | |
09d B13: # B987 B14 <- B12 Freq: 1.9999 | |
09d MEMBAR-acquire | |
09d CMP ECX,EDI | |
09f Jne B987 P=0.000000 C=6701.000000 | |
09f | |
0a5 B14: # B15 <- B13 Freq: 1.9999 | |
0a5 MOV EDI,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
0a5 | |
0a8 B15: # B2000 B16 <- B14 B988 Freq: 1.9999 | |
0a8 MOV ECX,[ESP + #44] | |
0ac MOV EBP,[ECX + #32] ! Field org/jruby/ast/executable/AbstractScript.fixnums | |
0af MOV ECX,[EBP + #8] | |
0b2 NullCheck EBP | |
0b2 | |
0b2 B16: # B1999 B17 <- B15 Freq: 1.9999 | |
0b2 TESTu ECX,ECX | |
0b4 Jle,u B1999 P=0.000001 C=-1.000000 | |
0b4 | |
0ba B17: # B1998 B18 <- B16 Freq: 1.9999 | |
0ba MOV ESI,[EBP + #12] | |
0bd MOV ECX.lo,[ESI + #24] | |
MOV ECX.hi,[ESI + #24]+4 ! Field org/jruby/RubyFixnum.value | |
0c3 NullCheck ESI | |
0c3 | |
0c3 B18: # B1997 B19 <- B17 Freq: 1.9999 | |
0c3 MOV EBP,[EDI + #4] | |
0c6 NullCheck EDI | |
0c6 | |
0c6 B19: # B1996 B20 <- B18 Freq: 1.99989 | |
0c6 CMPu EBP,precise klass org/jruby/RubyFixnum$i_method_1_0$RUBYINVOKER$op_lt: 0x0892c098:Constant:exact * | |
0cc Jne,u B1996 P=0.000001 C=-1.000000 | |
0cc | |
0d2 B20: # B990 B21 <- B19 Freq: 1.99989 | |
0d2 MOV EDI,[ESP + #40] | |
0d6 MOV EDI,[EDI + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
0d9 MOV ESI,[ESP + #56] | |
0dd MOV EAX.lo,[ESI + #24] | |
MOV EAX.hi,[ESI + #24]+4 ! Field org/jruby/RubyFixnum.value | |
0e3 CMP EAX.lo,ECX.lo ! Long compare; set flags for low bits | |
MOV ESI,EAX.hi | |
SBB ESI,ECX.hi ! Compute flags for long compare | |
0e9 Jge B990 P=0.000000 C=6701.000000 | |
0e9 | |
0ef B21: # B989 B22 <- B20 Freq: 1.99989 | |
0ef MOV EBP,[EDI + #132] ! Field org/jruby/Ruby.trueObject | |
0f5 NullCheck EDI | |
0f5 | |
0f5 B22: # B1994 B23 <- B991 B21 Freq: 1.99989 | |
0f5 #checkcastPP of EBP | |
0f5 MOV EBX,[EBP + #4] | |
0f8 NullCheck EBP | |
0f8 | |
0f8 B23: # B1993 B24 <- B22 Freq: 1.99989 | |
0f8 CMPu EBX,precise klass org/jruby/RubyBoolean: 0x0892c108:Constant:exact * | |
0fe Jne,u B1993 P=0.000001 C=-1.000000 | |
0fe | |
104 B24: # B1990 B25 <- B23 Freq: 1.99989 | |
104 #checkcastPP of EBP | |
104 MOV EBX,[EBP + #8] ! Field org/jruby/RubyBasicObject.flags | |
107 TEST EBX,#1 | |
10d Jne B1990 P=0.000000 C=13312.000000 | |
10d | |
113 B25: # B26 <- B24 Freq: 1.99989 | |
113 MOV ECX,[ESP + #80] | |
117 MOV EAX,[ECX + #4] | |
11a MOV EBP,#328 | |
NOP # 1 bytes pad for loops and calls | |
120 B26: # B1989 B27 <- B25 B986 Loop: B26-B986 inner Freq: 809.446 | |
120 MOV EBX,[ESP + #44] | |
124 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
127 MOV EDI,[EBX + #8] | |
12a NullCheck EBX | |
12a | |
12a B27: # B1988 B28 <- B26 Freq: 809.445 | |
12a CMPu EDI,#1 | |
12d Jle,u B1988 P=0.000001 C=-1.000000 | |
12d | |
133 B28: # B1987 B29 <- B27 Freq: 809.444 | |
133 MOV ECX,[EBX + #16] | |
136 MOV EDI,[ECX + #4] | |
139 NullCheck ECX | |
139 | |
139 B29: # B1986 B30 <- B28 Freq: 809.443 | |
139 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
13f Jne,u B1986 P=0.000000 C=-1.000000 | |
13f | |
145 B30: # B1985 B31 <- B29 Freq: 809.443 | |
145 #checkcastPP of ECX | |
145 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
148 MEMBAR-acquire | |
148 MOV EDI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
14b NullCheck EBX | |
14b | |
14b B31: # B1984 B32 <- B30 Freq: 809.442 | |
14b MOV EDX,[ESP + #48] | |
14f MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
152 NullCheck EDX | |
152 | |
152 B32: # B1983 B33 <- B31 Freq: 809.442 | |
152 MOV [ESP + #84],EAX | |
156 MOV ESI,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
159 NullCheck EDX | |
159 | |
159 B33: # B992 B34 <- B32 Freq: 809.441 | |
159 MEMBAR-acquire | |
159 CMP EDI,ESI | |
15b Jne B992 P=0.000000 C=6701.000000 | |
15b | |
161 B34: # B35 <- B33 Freq: 809.44 | |
161 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
161 | |
164 B35: # B1981 B36 <- B34 B993 Freq: 809.441 | |
164 MOV EBX,[EAX + #4] | |
167 NullCheck EAX | |
167 | |
167 B36: # B1980 B37 <- B35 Freq: 809.44 | |
167 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
16d Jne,u B1980 P=0.000001 C=-1.000000 | |
16d | |
173 B37: # B1979 B38 <- B36 Freq: 809.439 | |
173 #checkcastPP of EAX | |
173 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
179 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
17c MOV EDI,[EAX + #4] | |
17f NullCheck EAX | |
17f | |
17f B38: # B1978 B39 <- B37 Freq: 809.438 | |
17f CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
185 Jne,u B1978 P=0.000000 C=-1.000000 | |
185 | |
18b B39: # B1977 B40 <- B38 Freq: 809.438 | |
18b MOV ECX,[ESP + #40] | |
18f MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
192 TEST EBX,EBX | |
194 Jeq B1977 P=0.000001 C=-1.000000 | |
194 | |
19a B40: # B1976 B41 <- B39 Freq: 809.438 | |
19a MOV EDX,[ESP + #84] | |
19e CMPu EDX,precise klass org/jruby/RubyObject: 0x085bc948:Constant:exact * | |
1a4 Jne,u B1976 P=0.000001 C=-1.000000 | |
1a4 | |
1aa B41: # B1975 B42 <- B40 Freq: 809.437 | |
1aa MOV EBX,[ESP + #44] | |
1ae MOV EDI,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1b1 MOV EBX,[EDI + #8] | |
1b4 NullCheck EDI | |
1b4 | |
1b4 B42: # B1974 B43 <- B41 Freq: 809.436 | |
1b4 CMPu EBX,#2 | |
1b7 Jle,u B1974 P=0.000001 C=-1.000000 | |
1b7 | |
1bd B43: # B1973 B44 <- B42 Freq: 809.435 | |
1bd MOV ECX,[EDI + #20] | |
1c0 MOV EDI,[ECX + #4] | |
1c3 NullCheck ECX | |
1c3 | |
1c3 B44: # B1972 B45 <- B43 Freq: 809.434 | |
1c3 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
1c9 Jne,u B1972 P=0.000000 C=-1.000000 | |
1c9 | |
1cf B45: # B1971 B46 <- B44 Freq: 809.434 | |
1cf #checkcastPP of ECX | |
1cf MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
1d2 MEMBAR-acquire | |
1d2 MOV EDI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
1d5 NullCheck EBX | |
1d5 | |
1d5 B46: # B1970 B47 <- B45 Freq: 809.433 | |
1d5 MOV EAX,[ESP + #48] | |
1d9 MOV EAX,[EAX + #56] ! Field org/jruby/RubyModule.generation | |
1dc MOV ESI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
1df NullCheck EAX | |
1df | |
1df B47: # B994 B48 <- B46 Freq: 809.433 | |
1df MEMBAR-acquire | |
1df CMP EDI,ESI | |
1e1 Jne B994 P=0.000000 C=6701.000000 | |
1e1 | |
1e7 B48: # B49 <- B47 Freq: 809.432 | |
1e7 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
1e7 | |
1ea B49: # B1968 B50 <- B48 B995 Freq: 809.433 | |
1ea MOV EBX,[EAX + #4] | |
1ed NullCheck EAX | |
1ed | |
1ed B50: # B1967 B51 <- B49 Freq: 809.432 | |
1ed CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
1f3 Jne,u B1967 P=0.000001 C=-1.000000 | |
1f3 | |
1f9 B51: # B1966 B52 <- B50 Freq: 809.431 | |
1f9 #checkcastPP of EAX | |
1f9 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
1ff MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
202 MOV EDI,[EAX + #4] | |
205 NullCheck EAX | |
205 | |
205 B52: # B1965 B53 <- B51 Freq: 809.43 | |
205 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
20b Jne,u B1965 P=0.000000 C=-1.000000 | |
20b | |
211 B53: # B1964 B54 <- B52 Freq: 809.43 | |
211 MOV ECX,[ESP + #40] | |
215 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
218 TEST EBX,EBX | |
21a Jeq B1964 P=0.000001 C=-1.000000 | |
21a | |
220 B54: # B1963 B55 <- B53 Freq: 809.429 | |
220 MOV EBX,[ESP + #44] | |
224 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
227 MOV ECX,[EBX + #8] | |
22a NullCheck EBX | |
22a | |
22a B55: # B1962 B56 <- B54 Freq: 809.429 | |
22a CMPu ECX,#3 | |
22d Jle,u B1962 P=0.000001 C=-1.000000 | |
22d | |
233 B56: # B1961 B57 <- B55 Freq: 809.428 | |
233 MOV ECX,[EBX + #24] | |
236 MOV EBX,[ECX + #4] | |
239 NullCheck ECX | |
239 | |
239 B57: # B1960 B58 <- B56 Freq: 809.427 | |
239 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
23f Jne,u B1960 P=0.000000 C=-1.000000 | |
23f | |
245 B58: # B1959 B59 <- B57 Freq: 809.427 | |
245 #checkcastPP of ECX | |
245 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
248 MEMBAR-acquire | |
248 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
24b NullCheck EAX | |
24b | |
24b B59: # B1958 B60 <- B58 Freq: 809.426 | |
24b MOV EDX,[ESP + #48] | |
24f MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
252 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
255 NullCheck EDX | |
255 | |
255 B60: # B996 B61 <- B59 Freq: 809.425 | |
255 MEMBAR-acquire | |
255 CMP EDI,EBX | |
257 Jne B996 P=0.000000 C=6701.000000 | |
257 | |
25d B61: # B62 <- B60 Freq: 809.425 | |
25d MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
25d | |
260 B62: # B1956 B63 <- B61 B997 Freq: 809.425 | |
260 MOV ECX,[EAX + #4] | |
263 NullCheck EAX | |
263 | |
263 B63: # B1955 B64 <- B62 Freq: 809.424 | |
263 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
269 Jne,u B1955 P=0.000001 C=-1.000000 | |
269 | |
26f B64: # B1954 B65 <- B63 Freq: 809.424 | |
26f #checkcastPP of EAX | |
26f MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
275 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
278 MOV ECX,[EBX + #4] | |
27b NullCheck EBX | |
27b | |
27b B65: # B1953 B66 <- B64 Freq: 809.423 | |
27b CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
281 Jne,u B1953 P=0.000000 C=-1.000000 | |
281 | |
287 B66: # B1952 B67 <- B65 Freq: 809.423 | |
287 MOV EBX,[ESP + #40] | |
28b MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
28e TEST EDI,EDI | |
290 Jeq B1952 P=0.000001 C=-1.000000 | |
290 | |
296 B67: # B1951 B68 <- B66 Freq: 809.422 | |
296 MOV ECX,[ESP + #44] | |
29a MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
29d MOV EBX,[EDI + #8] | |
2a0 NullCheck EDI | |
2a0 | |
2a0 B68: # B1950 B69 <- B67 Freq: 809.421 | |
2a0 CMPu EBX,#4 | |
2a3 Jle,u B1950 P=0.000001 C=-1.000000 | |
2a3 | |
2a9 B69: # B1949 B70 <- B68 Freq: 809.42 | |
2a9 MOV ECX,[EDI + #28] | |
2ac MOV EDI,[ECX + #4] | |
2af NullCheck ECX | |
2af | |
2af B70: # B1948 B71 <- B69 Freq: 809.419 | |
2af CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
2b5 Jne,u B1948 P=0.000000 C=-1.000000 | |
2b5 | |
2bb B71: # B1947 B72 <- B70 Freq: 809.419 | |
2bb #checkcastPP of ECX | |
2bb MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
2be MEMBAR-acquire | |
2be MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
2c1 NullCheck EBX | |
2c1 | |
2c1 B72: # B1946 B73 <- B71 Freq: 809.419 | |
2c1 MOV EDI,[ESP + #48] | |
2c5 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
2c8 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
2cb NullCheck EAX | |
2cb | |
2cb B73: # B998 B74 <- B72 Freq: 809.418 | |
2cb MEMBAR-acquire | |
2cb CMP ESI,EDI | |
2cd Jne B998 P=0.000000 C=6701.000000 | |
2cd | |
2d3 B74: # B75 <- B73 Freq: 809.417 | |
2d3 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
2d3 | |
2d6 B75: # B1944 B76 <- B74 B999 Freq: 809.418 | |
2d6 MOV EBX,[EAX + #4] | |
2d9 NullCheck EAX | |
2d9 | |
2d9 B76: # B1943 B77 <- B75 Freq: 809.417 | |
2d9 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
2df Jne,u B1943 P=0.000001 C=-1.000000 | |
2df | |
2e5 B77: # B1942 B78 <- B76 Freq: 809.416 | |
2e5 #checkcastPP of EAX | |
2e5 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
2eb MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
2ee MOV EDI,[EAX + #4] | |
2f1 NullCheck EAX | |
2f1 | |
2f1 B78: # B1941 B79 <- B77 Freq: 809.415 | |
2f1 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
2f7 Jne,u B1941 P=0.000000 C=-1.000000 | |
2f7 | |
2fd B79: # B1940 B80 <- B78 Freq: 809.415 | |
2fd MOV ECX,[ESP + #40] | |
301 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
304 TEST EBX,EBX | |
306 Jeq B1940 P=0.000001 C=-1.000000 | |
306 | |
30c B80: # B1939 B81 <- B79 Freq: 809.415 | |
30c MOV EBX,[ESP + #44] | |
310 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
313 MOV ECX,[EBX + #8] | |
316 NullCheck EBX | |
316 | |
316 B81: # B1938 B82 <- B80 Freq: 809.414 | |
316 CMPu ECX,#5 | |
319 Jle,u B1938 P=0.000001 C=-1.000000 | |
319 | |
31f B82: # B1937 B83 <- B81 Freq: 809.413 | |
31f MOV ECX,[EBX + #32] | |
322 MOV EBX,[ECX + #4] | |
325 NullCheck ECX | |
325 | |
325 B83: # B1936 B84 <- B82 Freq: 809.412 | |
325 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
32b Jne,u B1936 P=0.000000 C=-1.000000 | |
32b | |
331 B84: # B1935 B85 <- B83 Freq: 809.412 | |
331 #checkcastPP of ECX | |
331 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
334 MEMBAR-acquire | |
334 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
337 NullCheck EAX | |
337 | |
337 B85: # B1934 B86 <- B84 Freq: 809.411 | |
337 MOV EDX,[ESP + #48] | |
33b MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
33e MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
341 NullCheck EDX | |
341 | |
341 B86: # B1000 B87 <- B85 Freq: 809.41 | |
341 MEMBAR-acquire | |
341 CMP EDI,EBX | |
343 Jne B1000 P=0.000000 C=6701.000000 | |
343 | |
349 B87: # B88 <- B86 Freq: 809.41 | |
349 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
349 | |
34c B88: # B1932 B89 <- B87 B1001 Freq: 809.41 | |
34c MOV ECX,[EAX + #4] | |
34f NullCheck EAX | |
34f | |
34f B89: # B1931 B90 <- B88 Freq: 809.41 | |
34f CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
355 Jne,u B1931 P=0.000001 C=-1.000000 | |
355 | |
35b B90: # B1930 B91 <- B89 Freq: 809.409 | |
35b #checkcastPP of EAX | |
35b MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
361 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
364 MOV ECX,[EBX + #4] | |
367 NullCheck EBX | |
367 | |
367 B91: # B1929 B92 <- B90 Freq: 809.408 | |
367 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
36d Jne,u B1929 P=0.000000 C=-1.000000 | |
36d | |
373 B92: # B1928 B93 <- B91 Freq: 809.408 | |
373 MOV EBX,[ESP + #40] | |
377 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
37a TEST EDI,EDI | |
37c Jeq B1928 P=0.000001 C=-1.000000 | |
37c | |
382 B93: # B1927 B94 <- B92 Freq: 809.407 | |
382 MOV ECX,[ESP + #44] | |
386 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
389 MOV EBX,[EDI + #8] | |
38c NullCheck EDI | |
38c | |
38c B94: # B1926 B95 <- B93 Freq: 809.406 | |
38c CMPu EBX,#6 | |
38f Jle,u B1926 P=0.000001 C=-1.000000 | |
38f | |
395 B95: # B1925 B96 <- B94 Freq: 809.406 | |
395 MOV ECX,[EDI + #36] | |
398 MOV EDI,[ECX + #4] | |
39b NullCheck ECX | |
39b | |
39b B96: # B1924 B97 <- B95 Freq: 809.405 | |
39b CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
3a1 Jne,u B1924 P=0.000000 C=-1.000000 | |
3a1 | |
3a7 B97: # B1923 B98 <- B96 Freq: 809.405 | |
3a7 #checkcastPP of ECX | |
3a7 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
3aa MEMBAR-acquire | |
3aa MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
3ad NullCheck EBX | |
3ad | |
3ad B98: # B1922 B99 <- B97 Freq: 809.404 | |
3ad MOV EDI,[ESP + #48] | |
3b1 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
3b4 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
3b7 NullCheck EAX | |
3b7 | |
3b7 B99: # B1002 B100 <- B98 Freq: 809.403 | |
3b7 MEMBAR-acquire | |
3b7 CMP ESI,EDI | |
3b9 Jne B1002 P=0.000000 C=6701.000000 | |
3b9 | |
3bf B100: # B101 <- B99 Freq: 809.403 | |
3bf MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
3bf | |
3c2 B101: # B1920 B102 <- B100 B1003 Freq: 809.403 | |
3c2 MOV EBX,[EAX + #4] | |
3c5 NullCheck EAX | |
3c5 | |
3c5 B102: # B1919 B103 <- B101 Freq: 809.402 | |
3c5 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
3cb Jne,u B1919 P=0.000001 C=-1.000000 | |
3cb | |
3d1 B103: # B1918 B104 <- B102 Freq: 809.401 | |
3d1 #checkcastPP of EAX | |
3d1 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
3d7 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
3da MOV EDI,[EAX + #4] | |
3dd NullCheck EAX | |
3dd | |
3dd B104: # B1917 B105 <- B103 Freq: 809.401 | |
3dd CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
3e3 Jne,u B1917 P=0.000000 C=-1.000000 | |
3e3 | |
3e9 B105: # B1916 B106 <- B104 Freq: 809.401 | |
3e9 MOV ECX,[ESP + #40] | |
3ed MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
3f0 TEST EBX,EBX | |
3f2 Jeq B1916 P=0.000001 C=-1.000000 | |
3f2 | |
3f8 B106: # B1915 B107 <- B105 Freq: 809.4 | |
3f8 MOV EBX,[ESP + #44] | |
3fc MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
3ff MOV ECX,[EBX + #8] | |
402 NullCheck EBX | |
402 | |
402 B107: # B1914 B108 <- B106 Freq: 809.399 | |
402 CMPu ECX,#7 | |
405 Jle,u B1914 P=0.000001 C=-1.000000 | |
405 | |
40b B108: # B1913 B109 <- B107 Freq: 809.398 | |
40b MOV ECX,[EBX + #40] | |
40e MOV EBX,[ECX + #4] | |
411 NullCheck ECX | |
411 | |
411 B109: # B1912 B110 <- B108 Freq: 809.397 | |
411 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
417 Jne,u B1912 P=0.000000 C=-1.000000 | |
417 | |
41d B110: # B1911 B111 <- B109 Freq: 809.397 | |
41d #checkcastPP of ECX | |
41d MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
420 MEMBAR-acquire | |
420 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
423 NullCheck EAX | |
423 | |
423 B111: # B1910 B112 <- B110 Freq: 809.397 | |
423 MOV EDX,[ESP + #48] | |
427 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
42a MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
42d NullCheck EDX | |
42d | |
42d B112: # B1004 B113 <- B111 Freq: 809.396 | |
42d MEMBAR-acquire | |
42d CMP EDI,EBX | |
42f Jne B1004 P=0.000000 C=6701.000000 | |
42f | |
435 B113: # B114 <- B112 Freq: 809.395 | |
435 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
435 | |
438 B114: # B1908 B115 <- B113 B1005 Freq: 809.396 | |
438 MOV ECX,[EAX + #4] | |
43b NullCheck EAX | |
43b | |
43b B115: # B1907 B116 <- B114 Freq: 809.395 | |
43b CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
441 Jne,u B1907 P=0.000001 C=-1.000000 | |
441 | |
447 B116: # B1906 B117 <- B115 Freq: 809.394 | |
447 #checkcastPP of EAX | |
447 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
44d MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
450 MOV ECX,[EBX + #4] | |
453 NullCheck EBX | |
453 | |
453 B117: # B1905 B118 <- B116 Freq: 809.393 | |
453 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
459 Jne,u B1905 P=0.000000 C=-1.000000 | |
459 | |
45f B118: # B1904 B119 <- B117 Freq: 809.393 | |
45f MOV EBX,[ESP + #40] | |
463 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
466 TEST EDI,EDI | |
468 Jeq B1904 P=0.000001 C=-1.000000 | |
468 | |
46e B119: # B1903 B120 <- B118 Freq: 809.392 | |
46e MOV ECX,[ESP + #44] | |
472 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
475 MOV EBX,[EDI + #8] | |
478 NullCheck EDI | |
478 | |
478 B120: # B1902 B121 <- B119 Freq: 809.392 | |
478 CMPu EBX,#8 | |
47b Jle,u B1902 P=0.000001 C=-1.000000 | |
47b | |
481 B121: # B1901 B122 <- B120 Freq: 809.391 | |
481 MOV ECX,[EDI + #44] | |
484 MOV EDI,[ECX + #4] | |
487 NullCheck ECX | |
487 | |
487 B122: # B1900 B123 <- B121 Freq: 809.39 | |
487 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
48d Jne,u B1900 P=0.000000 C=-1.000000 | |
48d | |
493 B123: # B1899 B124 <- B122 Freq: 809.39 | |
493 #checkcastPP of ECX | |
493 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
496 MEMBAR-acquire | |
496 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
499 NullCheck EBX | |
499 | |
499 B124: # B1898 B125 <- B123 Freq: 809.389 | |
499 MOV EDI,[ESP + #48] | |
49d MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
4a0 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
4a3 NullCheck EAX | |
4a3 | |
4a3 B125: # B1006 B126 <- B124 Freq: 809.388 | |
4a3 MEMBAR-acquire | |
4a3 CMP ESI,EDI | |
4a5 Jne B1006 P=0.000000 C=6701.000000 | |
4a5 | |
4ab B126: # B127 <- B125 Freq: 809.388 | |
4ab MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
4ab | |
4ae B127: # B1896 B128 <- B126 B1007 Freq: 809.388 | |
4ae MOV EBX,[EAX + #4] | |
4b1 NullCheck EAX | |
4b1 | |
4b1 B128: # B1895 B129 <- B127 Freq: 809.388 | |
4b1 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
4b7 Jne,u B1895 P=0.000001 C=-1.000000 | |
4b7 | |
4bd B129: # B1894 B130 <- B128 Freq: 809.387 | |
4bd #checkcastPP of EAX | |
4bd MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
4c3 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
4c6 MOV EDI,[EAX + #4] | |
4c9 NullCheck EAX | |
4c9 | |
4c9 B130: # B1893 B131 <- B129 Freq: 809.386 | |
4c9 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
4cf Jne,u B1893 P=0.000000 C=-1.000000 | |
4cf | |
4d5 B131: # B1892 B132 <- B130 Freq: 809.386 | |
4d5 MOV ECX,[ESP + #40] | |
4d9 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
4dc TEST EBX,EBX | |
4de Jeq B1892 P=0.000001 C=-1.000000 | |
4de | |
4e4 B132: # B1891 B133 <- B131 Freq: 809.385 | |
4e4 MOV EBX,[ESP + #44] | |
4e8 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
4eb MOV ECX,[EBX + #8] | |
4ee NullCheck EBX | |
4ee | |
4ee B133: # B1890 B134 <- B132 Freq: 809.384 | |
4ee CMPu ECX,#9 | |
4f1 Jle,u B1890 P=0.000001 C=-1.000000 | |
4f1 | |
4f7 B134: # B1889 B135 <- B133 Freq: 809.383 | |
4f7 MOV ECX,[EBX + #48] | |
4fa MOV EBX,[ECX + #4] | |
4fd NullCheck ECX | |
4fd | |
4fd B135: # B1888 B136 <- B134 Freq: 809.383 | |
4fd CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
503 Jne,u B1888 P=0.000000 C=-1.000000 | |
503 | |
509 B136: # B1887 B137 <- B135 Freq: 809.383 | |
509 #checkcastPP of ECX | |
509 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
50c MEMBAR-acquire | |
50c MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
50f NullCheck EAX | |
50f | |
50f B137: # B1886 B138 <- B136 Freq: 809.382 | |
50f MOV EDX,[ESP + #48] | |
513 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
516 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
519 NullCheck EDX | |
519 | |
519 B138: # B1008 B139 <- B137 Freq: 809.381 | |
519 MEMBAR-acquire | |
519 CMP EDI,EBX | |
51b Jne B1008 P=0.000000 C=6701.000000 | |
51b | |
521 B139: # B140 <- B138 Freq: 809.381 | |
521 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
521 | |
524 B140: # B1884 B141 <- B139 B1009 Freq: 809.381 | |
524 MOV ECX,[EAX + #4] | |
527 NullCheck EAX | |
527 | |
527 B141: # B1883 B142 <- B140 Freq: 809.38 | |
527 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
52d Jne,u B1883 P=0.000001 C=-1.000000 | |
52d | |
533 B142: # B1882 B143 <- B141 Freq: 809.379 | |
533 #checkcastPP of EAX | |
533 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
539 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
53c MOV ECX,[EBX + #4] | |
53f NullCheck EBX | |
53f | |
53f B143: # B1881 B144 <- B142 Freq: 809.378 | |
53f CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
545 Jne,u B1881 P=0.000000 C=-1.000000 | |
545 | |
54b B144: # B1880 B145 <- B143 Freq: 809.378 | |
54b MOV EBX,[ESP + #40] | |
54f MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
552 TEST EDI,EDI | |
554 Jeq B1880 P=0.000001 C=-1.000000 | |
554 | |
55a B145: # B1879 B146 <- B144 Freq: 809.378 | |
55a MOV ECX,[ESP + #44] | |
55e MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
561 MOV EBX,[EDI + #8] | |
564 NullCheck EDI | |
564 | |
564 B146: # B1878 B147 <- B145 Freq: 809.377 | |
564 CMPu EBX,#10 | |
567 Jle,u B1878 P=0.000001 C=-1.000000 | |
567 | |
56d B147: # B1877 B148 <- B146 Freq: 809.376 | |
56d MOV ECX,[EDI + #52] | |
570 MOV EDI,[ECX + #4] | |
573 NullCheck ECX | |
573 | |
573 B148: # B1876 B149 <- B147 Freq: 809.375 | |
573 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
579 Jne,u B1876 P=0.000000 C=-1.000000 | |
579 | |
57f B149: # B1875 B150 <- B148 Freq: 809.375 | |
57f #checkcastPP of ECX | |
57f MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
582 MEMBAR-acquire | |
582 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
585 NullCheck EBX | |
585 | |
585 B150: # B1874 B151 <- B149 Freq: 809.374 | |
585 MOV EDI,[ESP + #48] | |
589 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
58c MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
58f NullCheck EAX | |
58f | |
58f B151: # B1010 B152 <- B150 Freq: 809.374 | |
58f MEMBAR-acquire | |
58f CMP ESI,EDI | |
591 Jne B1010 P=0.000000 C=6701.000000 | |
591 | |
597 B152: # B153 <- B151 Freq: 809.373 | |
597 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
597 | |
59a B153: # B1872 B154 <- B152 B1011 Freq: 809.374 | |
59a MOV EBX,[EAX + #4] | |
59d NullCheck EAX | |
59d | |
59d B154: # B1871 B155 <- B153 Freq: 809.373 | |
59d CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
5a3 Jne,u B1871 P=0.000001 C=-1.000000 | |
5a3 | |
5a9 B155: # B1870 B156 <- B154 Freq: 809.372 | |
5a9 #checkcastPP of EAX | |
5a9 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
5af MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
5b2 MOV EDI,[EAX + #4] | |
5b5 NullCheck EAX | |
5b5 | |
5b5 B156: # B1869 B157 <- B155 Freq: 809.371 | |
5b5 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
5bb Jne,u B1869 P=0.000000 C=-1.000000 | |
5bb | |
5c1 B157: # B1868 B158 <- B156 Freq: 809.371 | |
5c1 MOV ECX,[ESP + #40] | |
5c5 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
5c8 TEST EBX,EBX | |
5ca Jeq B1868 P=0.000001 C=-1.000000 | |
5ca | |
5d0 B158: # B1867 B159 <- B157 Freq: 809.37 | |
5d0 MOV EBX,[ESP + #44] | |
5d4 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
5d7 MOV ECX,[EBX + #8] | |
5da NullCheck EBX | |
5da | |
5da B159: # B1866 B160 <- B158 Freq: 809.369 | |
5da CMPu ECX,#11 | |
5dd Jle,u B1866 P=0.000001 C=-1.000000 | |
5dd | |
5e3 B160: # B1865 B161 <- B159 Freq: 809.369 | |
5e3 MOV ECX,[EBX + #56] | |
5e6 MOV EBX,[ECX + #4] | |
5e9 NullCheck ECX | |
5e9 | |
5e9 B161: # B1864 B162 <- B160 Freq: 809.368 | |
5e9 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
5ef Jne,u B1864 P=0.000000 C=-1.000000 | |
5ef | |
5f5 B162: # B1863 B163 <- B161 Freq: 809.368 | |
5f5 #checkcastPP of ECX | |
5f5 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
5f8 MEMBAR-acquire | |
5f8 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
5fb NullCheck EAX | |
5fb | |
5fb B163: # B1862 B164 <- B162 Freq: 809.367 | |
5fb MOV EDX,[ESP + #48] | |
5ff MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
602 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
605 NullCheck EDX | |
605 | |
605 B164: # B1012 B165 <- B163 Freq: 809.366 | |
605 MEMBAR-acquire | |
605 CMP EDI,EBX | |
607 Jne B1012 P=0.000000 C=6701.000000 | |
607 | |
60d B165: # B166 <- B164 Freq: 809.366 | |
60d MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
60d | |
610 B166: # B1860 B167 <- B165 B1013 Freq: 809.366 | |
610 MOV ECX,[EAX + #4] | |
613 NullCheck EAX | |
613 | |
613 B167: # B1859 B168 <- B166 Freq: 809.365 | |
613 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
619 Jne,u B1859 P=0.000001 C=-1.000000 | |
619 | |
61f B168: # B1858 B169 <- B167 Freq: 809.365 | |
61f #checkcastPP of EAX | |
61f MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
625 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
628 MOV ECX,[EBX + #4] | |
62b NullCheck EBX | |
62b | |
62b B169: # B1857 B170 <- B168 Freq: 809.364 | |
62b CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
631 Jne,u B1857 P=0.000000 C=-1.000000 | |
631 | |
637 B170: # B1856 B171 <- B169 Freq: 809.364 | |
637 MOV EBX,[ESP + #40] | |
63b MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
63e TEST EDI,EDI | |
640 Jeq B1856 P=0.000001 C=-1.000000 | |
640 | |
646 B171: # B1855 B172 <- B170 Freq: 809.363 | |
646 MOV ECX,[ESP + #44] | |
64a MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
64d MOV EBX,[EDI + #8] | |
650 NullCheck EDI | |
650 | |
650 B172: # B1854 B173 <- B171 Freq: 809.362 | |
650 CMPu EBX,#12 | |
653 Jle,u B1854 P=0.000001 C=-1.000000 | |
653 | |
659 B173: # B1853 B174 <- B172 Freq: 809.361 | |
659 MOV ECX,[EDI + #60] | |
65c MOV EDI,[ECX + #4] | |
65f NullCheck ECX | |
65f | |
65f B174: # B1852 B175 <- B173 Freq: 809.36 | |
65f CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
665 Jne,u B1852 P=0.000000 C=-1.000000 | |
665 | |
66b B175: # B1851 B176 <- B174 Freq: 809.36 | |
66b #checkcastPP of ECX | |
66b MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
66e MEMBAR-acquire | |
66e MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
671 NullCheck EBX | |
671 | |
671 B176: # B1850 B177 <- B175 Freq: 809.36 | |
671 MOV EDI,[ESP + #48] | |
675 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
678 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
67b NullCheck EAX | |
67b | |
67b B177: # B1014 B178 <- B176 Freq: 809.359 | |
67b MEMBAR-acquire | |
67b CMP ESI,EDI | |
67d Jne B1014 P=0.000000 C=6701.000000 | |
67d | |
683 B178: # B179 <- B177 Freq: 809.358 | |
683 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
683 | |
686 B179: # B1848 B180 <- B178 B1015 Freq: 809.359 | |
686 MOV EBX,[EAX + #4] | |
689 NullCheck EAX | |
689 | |
689 B180: # B1847 B181 <- B179 Freq: 809.358 | |
689 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
68f Jne,u B1847 P=0.000001 C=-1.000000 | |
68f | |
695 B181: # B1846 B182 <- B180 Freq: 809.357 | |
695 #checkcastPP of EAX | |
695 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
69b MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
69e MOV EDI,[EAX + #4] | |
6a1 NullCheck EAX | |
6a1 | |
6a1 B182: # B1845 B183 <- B181 Freq: 809.356 | |
6a1 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
6a7 Jne,u B1845 P=0.000000 C=-1.000000 | |
6a7 | |
6ad B183: # B1844 B184 <- B182 Freq: 809.356 | |
6ad MOV ECX,[ESP + #40] | |
6b1 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
6b4 TEST EBX,EBX | |
6b6 Jeq B1844 P=0.000001 C=-1.000000 | |
6b6 | |
6bc B184: # B1843 B185 <- B183 Freq: 809.356 | |
6bc MOV EBX,[ESP + #44] | |
6c0 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
6c3 MOV ECX,[EBX + #8] | |
6c6 NullCheck EBX | |
6c6 | |
6c6 B185: # B1842 B186 <- B184 Freq: 809.355 | |
6c6 CMPu ECX,#13 | |
6c9 Jle,u B1842 P=0.000001 C=-1.000000 | |
6c9 | |
6cf B186: # B1841 B187 <- B185 Freq: 809.354 | |
6cf MOV ECX,[EBX + #64] | |
6d2 MOV EBX,[ECX + #4] | |
6d5 NullCheck ECX | |
6d5 | |
6d5 B187: # B1840 B188 <- B186 Freq: 809.353 | |
6d5 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
6db Jne,u B1840 P=0.000000 C=-1.000000 | |
6db | |
6e1 B188: # B1839 B189 <- B187 Freq: 809.353 | |
6e1 #checkcastPP of ECX | |
6e1 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
6e4 MEMBAR-acquire | |
6e4 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
6e7 NullCheck EAX | |
6e7 | |
6e7 B189: # B1838 B190 <- B188 Freq: 809.352 | |
6e7 MOV EDX,[ESP + #48] | |
6eb MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
6ee MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
6f1 NullCheck EDX | |
6f1 | |
6f1 B190: # B1016 B191 <- B189 Freq: 809.351 | |
6f1 MEMBAR-acquire | |
6f1 CMP EDI,EBX | |
6f3 Jne B1016 P=0.000000 C=6701.000000 | |
6f3 | |
6f9 B191: # B192 <- B190 Freq: 809.351 | |
6f9 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
6f9 | |
6fc B192: # B1836 B193 <- B191 B1017 Freq: 809.351 | |
6fc MOV ECX,[EAX + #4] | |
6ff NullCheck EAX | |
6ff | |
6ff B193: # B1835 B194 <- B192 Freq: 809.351 | |
6ff CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
705 Jne,u B1835 P=0.000001 C=-1.000000 | |
705 | |
70b B194: # B1834 B195 <- B193 Freq: 809.35 | |
70b #checkcastPP of EAX | |
70b MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
711 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
714 MOV ECX,[EBX + #4] | |
717 NullCheck EBX | |
717 | |
717 B195: # B1833 B196 <- B194 Freq: 809.349 | |
717 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
71d Jne,u B1833 P=0.000000 C=-1.000000 | |
71d | |
723 B196: # B1832 B197 <- B195 Freq: 809.349 | |
723 MOV EBX,[ESP + #40] | |
727 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
72a TEST EDI,EDI | |
72c Jeq B1832 P=0.000001 C=-1.000000 | |
72c | |
732 B197: # B1831 B198 <- B196 Freq: 809.348 | |
732 MOV ECX,[ESP + #44] | |
736 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
739 MOV EBX,[EDI + #8] | |
73c NullCheck EDI | |
73c | |
73c B198: # B1830 B199 <- B197 Freq: 809.347 | |
73c CMPu EBX,#14 | |
73f Jle,u B1830 P=0.000001 C=-1.000000 | |
73f | |
745 B199: # B1829 B200 <- B198 Freq: 809.346 | |
745 MOV ECX,[EDI + #68] | |
748 MOV EDI,[ECX + #4] | |
74b NullCheck ECX | |
74b | |
74b B200: # B1828 B201 <- B199 Freq: 809.346 | |
74b CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
751 Jne,u B1828 P=0.000000 C=-1.000000 | |
751 | |
757 B201: # B1827 B202 <- B200 Freq: 809.346 | |
757 #checkcastPP of ECX | |
757 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
75a MEMBAR-acquire | |
75a MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
75d NullCheck EBX | |
75d | |
75d B202: # B1826 B203 <- B201 Freq: 809.345 | |
75d MOV EDI,[ESP + #48] | |
761 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
764 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
767 NullCheck EAX | |
767 | |
767 B203: # B1018 B204 <- B202 Freq: 809.344 | |
767 MEMBAR-acquire | |
767 CMP ESI,EDI | |
769 Jne B1018 P=0.000000 C=6701.000000 | |
769 | |
76f B204: # B205 <- B203 Freq: 809.344 | |
76f MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
76f | |
772 B205: # B1824 B206 <- B204 B1019 Freq: 809.344 | |
772 MOV EBX,[EAX + #4] | |
775 NullCheck EAX | |
775 | |
775 B206: # B1823 B207 <- B205 Freq: 809.343 | |
775 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
77b Jne,u B1823 P=0.000001 C=-1.000000 | |
77b | |
781 B207: # B1822 B208 <- B206 Freq: 809.342 | |
781 #checkcastPP of EAX | |
781 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
787 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
78a MOV EDI,[EAX + #4] | |
78d NullCheck EAX | |
78d | |
78d B208: # B1821 B209 <- B207 Freq: 809.342 | |
78d CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
793 Jne,u B1821 P=0.000000 C=-1.000000 | |
793 | |
799 B209: # B1820 B210 <- B208 Freq: 809.342 | |
799 MOV ECX,[ESP + #40] | |
79d MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
7a0 TEST EBX,EBX | |
7a2 Jeq B1820 P=0.000001 C=-1.000000 | |
7a2 | |
7a8 B210: # B1819 B211 <- B209 Freq: 809.341 | |
7a8 MOV EBX,[ESP + #44] | |
7ac MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
7af MOV ECX,[EBX + #8] | |
7b2 NullCheck EBX | |
7b2 | |
7b2 B211: # B1818 B212 <- B210 Freq: 809.34 | |
7b2 CMPu ECX,#15 | |
7b5 Jle,u B1818 P=0.000001 C=-1.000000 | |
7b5 | |
7bb B212: # B1817 B213 <- B211 Freq: 809.339 | |
7bb MOV ECX,[EBX + #72] | |
7be MOV EBX,[ECX + #4] | |
7c1 NullCheck ECX | |
7c1 | |
7c1 B213: # B1816 B214 <- B212 Freq: 809.338 | |
7c1 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
7c7 Jne,u B1816 P=0.000000 C=-1.000000 | |
7c7 | |
7cd B214: # B1815 B215 <- B213 Freq: 809.338 | |
7cd #checkcastPP of ECX | |
7cd MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
7d0 MEMBAR-acquire | |
7d0 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
7d3 NullCheck EAX | |
7d3 | |
7d3 B215: # B1814 B216 <- B214 Freq: 809.337 | |
7d3 MOV EDX,[ESP + #48] | |
7d7 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
7da MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
7dd NullCheck EDX | |
7dd | |
7dd B216: # B1020 B217 <- B215 Freq: 809.337 | |
7dd MEMBAR-acquire | |
7dd CMP EDI,EBX | |
7df Jne B1020 P=0.000000 C=6701.000000 | |
7df | |
7e5 B217: # B218 <- B216 Freq: 809.336 | |
7e5 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
7e5 | |
7e8 B218: # B1812 B219 <- B217 B1021 Freq: 809.337 | |
7e8 MOV ECX,[EAX + #4] | |
7eb NullCheck EAX | |
7eb | |
7eb B219: # B1811 B220 <- B218 Freq: 809.336 | |
7eb CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
7f1 Jne,u B1811 P=0.000001 C=-1.000000 | |
7f1 | |
7f7 B220: # B1810 B221 <- B219 Freq: 809.335 | |
7f7 #checkcastPP of EAX | |
7f7 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
7fd MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
800 MOV ECX,[EBX + #4] | |
803 NullCheck EBX | |
803 | |
803 B221: # B1809 B222 <- B220 Freq: 809.334 | |
803 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
809 Jne,u B1809 P=0.000000 C=-1.000000 | |
809 | |
80f B222: # B1808 B223 <- B221 Freq: 809.334 | |
80f MOV EBX,[ESP + #40] | |
813 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
816 TEST EDI,EDI | |
818 Jeq B1808 P=0.000001 C=-1.000000 | |
818 | |
81e B223: # B1807 B224 <- B222 Freq: 809.333 | |
81e MOV ECX,[ESP + #44] | |
822 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
825 MOV EBX,[EDI + #8] | |
828 NullCheck EDI | |
828 | |
828 B224: # B1806 B225 <- B223 Freq: 809.333 | |
828 CMPu EBX,#16 | |
82b Jle,u B1806 P=0.000001 C=-1.000000 | |
82b | |
831 B225: # B1805 B226 <- B224 Freq: 809.332 | |
831 MOV ECX,[EDI + #76] | |
834 MOV EDI,[ECX + #4] | |
837 NullCheck ECX | |
837 | |
837 B226: # B1804 B227 <- B225 Freq: 809.331 | |
837 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
83d Jne,u B1804 P=0.000000 C=-1.000000 | |
83d | |
843 B227: # B1803 B228 <- B226 Freq: 809.331 | |
843 #checkcastPP of ECX | |
843 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
846 MEMBAR-acquire | |
846 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
849 NullCheck EBX | |
849 | |
849 B228: # B1802 B229 <- B227 Freq: 809.33 | |
849 MOV EDI,[ESP + #48] | |
84d MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
850 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
853 NullCheck EAX | |
853 | |
853 B229: # B1022 B230 <- B228 Freq: 809.329 | |
853 MEMBAR-acquire | |
853 CMP ESI,EDI | |
855 Jne B1022 P=0.000000 C=6701.000000 | |
855 | |
85b B230: # B231 <- B229 Freq: 809.329 | |
85b MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
85b | |
85e B231: # B1800 B232 <- B230 B1023 Freq: 809.329 | |
85e MOV EBX,[EAX + #4] | |
861 NullCheck EAX | |
861 | |
861 B232: # B1799 B233 <- B231 Freq: 809.328 | |
861 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
867 Jne,u B1799 P=0.000001 C=-1.000000 | |
867 | |
86d B233: # B1798 B234 <- B232 Freq: 809.328 | |
86d #checkcastPP of EAX | |
86d MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
873 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
876 MOV EDI,[EAX + #4] | |
879 NullCheck EAX | |
879 | |
879 B234: # B1797 B235 <- B233 Freq: 809.327 | |
879 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
87f Jne,u B1797 P=0.000000 C=-1.000000 | |
87f | |
885 B235: # B1796 B236 <- B234 Freq: 809.327 | |
885 MOV ECX,[ESP + #40] | |
889 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
88c TEST EBX,EBX | |
88e Jeq B1796 P=0.000001 C=-1.000000 | |
88e | |
894 B236: # B1795 B237 <- B235 Freq: 809.326 | |
894 MOV EBX,[ESP + #44] | |
898 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
89b MOV ECX,[EBX + #8] | |
89e NullCheck EBX | |
89e | |
89e B237: # B1794 B238 <- B236 Freq: 809.325 | |
89e CMPu ECX,#17 | |
8a1 Jle,u B1794 P=0.000001 C=-1.000000 | |
8a1 | |
8a7 B238: # B1793 B239 <- B237 Freq: 809.324 | |
8a7 MOV ECX,[EBX + #80] | |
8aa MOV EBX,[ECX + #4] | |
8ad NullCheck ECX | |
8ad | |
8ad B239: # B1792 B240 <- B238 Freq: 809.324 | |
8ad CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
8b3 Jne,u B1792 P=0.000000 C=-1.000000 | |
8b3 | |
8b9 B240: # B1791 B241 <- B239 Freq: 809.324 | |
8b9 #checkcastPP of ECX | |
8b9 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
8bc MEMBAR-acquire | |
8bc MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
8bf NullCheck EAX | |
8bf | |
8bf B241: # B1790 B242 <- B240 Freq: 809.323 | |
8bf MOV EDX,[ESP + #48] | |
8c3 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
8c6 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
8c9 NullCheck EDX | |
8c9 | |
8c9 B242: # B1024 B243 <- B241 Freq: 809.322 | |
8c9 MEMBAR-acquire | |
8c9 CMP EDI,EBX | |
8cb Jne B1024 P=0.000000 C=6701.000000 | |
8cb | |
8d1 B243: # B244 <- B242 Freq: 809.322 | |
8d1 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
8d1 | |
8d4 B244: # B1788 B245 <- B243 B1025 Freq: 809.322 | |
8d4 MOV ECX,[EAX + #4] | |
8d7 NullCheck EAX | |
8d7 | |
8d7 B245: # B1787 B246 <- B244 Freq: 809.321 | |
8d7 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
8dd Jne,u B1787 P=0.000001 C=-1.000000 | |
8dd | |
8e3 B246: # B1786 B247 <- B245 Freq: 809.32 | |
8e3 #checkcastPP of EAX | |
8e3 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
8e9 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
8ec MOV ECX,[EBX + #4] | |
8ef NullCheck EBX | |
8ef | |
8ef B247: # B1785 B248 <- B246 Freq: 809.319 | |
8ef CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
8f5 Jne,u B1785 P=0.000000 C=-1.000000 | |
8f5 | |
8fb B248: # B1784 B249 <- B247 Freq: 809.319 | |
8fb MOV EBX,[ESP + #40] | |
8ff MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
902 TEST EDI,EDI | |
904 Jeq B1784 P=0.000001 C=-1.000000 | |
904 | |
90a B249: # B1783 B250 <- B248 Freq: 809.319 | |
90a MOV ECX,[ESP + #44] | |
90e MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
911 MOV EBX,[EDI + #8] | |
914 NullCheck EDI | |
914 | |
914 B250: # B1782 B251 <- B249 Freq: 809.318 | |
914 CMPu EBX,#18 | |
917 Jle,u B1782 P=0.000001 C=-1.000000 | |
917 | |
91d B251: # B1781 B252 <- B250 Freq: 809.317 | |
91d MOV ECX,[EDI + #84] | |
920 MOV EDI,[ECX + #4] | |
923 NullCheck ECX | |
923 | |
923 B252: # B1780 B253 <- B251 Freq: 809.316 | |
923 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
929 Jne,u B1780 P=0.000000 C=-1.000000 | |
929 | |
92f B253: # B1779 B254 <- B252 Freq: 809.316 | |
92f #checkcastPP of ECX | |
92f MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
932 MEMBAR-acquire | |
932 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
935 NullCheck EBX | |
935 | |
935 B254: # B1778 B255 <- B253 Freq: 809.315 | |
935 MOV EDI,[ESP + #48] | |
939 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
93c MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
93f NullCheck EAX | |
93f | |
93f B255: # B1026 B256 <- B254 Freq: 809.315 | |
93f MEMBAR-acquire | |
93f CMP ESI,EDI | |
941 Jne B1026 P=0.000000 C=6701.000000 | |
941 | |
947 B256: # B257 <- B255 Freq: 809.314 | |
947 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
947 | |
94a B257: # B1776 B258 <- B256 B1027 Freq: 809.315 | |
94a MOV EBX,[EAX + #4] | |
94d NullCheck EAX | |
94d | |
94d B258: # B1775 B259 <- B257 Freq: 809.314 | |
94d CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
953 Jne,u B1775 P=0.000001 C=-1.000000 | |
953 | |
959 B259: # B1774 B260 <- B258 Freq: 809.313 | |
959 #checkcastPP of EAX | |
959 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
95f MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
962 MOV EDI,[EAX + #4] | |
965 NullCheck EAX | |
965 | |
965 B260: # B1773 B261 <- B259 Freq: 809.312 | |
965 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
96b Jne,u B1773 P=0.000000 C=-1.000000 | |
96b | |
971 B261: # B1772 B262 <- B260 Freq: 809.312 | |
971 MOV ECX,[ESP + #40] | |
975 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
978 TEST EBX,EBX | |
97a Jeq B1772 P=0.000001 C=-1.000000 | |
97a | |
980 B262: # B1771 B263 <- B261 Freq: 809.311 | |
980 MOV EBX,[ESP + #44] | |
984 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
987 MOV ECX,[EBX + #8] | |
98a NullCheck EBX | |
98a | |
98a B263: # B1770 B264 <- B262 Freq: 809.31 | |
98a CMPu ECX,#19 | |
98d Jle,u B1770 P=0.000001 C=-1.000000 | |
98d | |
993 B264: # B1769 B265 <- B263 Freq: 809.31 | |
993 MOV ECX,[EBX + #88] | |
996 MOV EBX,[ECX + #4] | |
999 NullCheck ECX | |
999 | |
999 B265: # B1768 B266 <- B264 Freq: 809.309 | |
999 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
99f Jne,u B1768 P=0.000000 C=-1.000000 | |
99f | |
9a5 B266: # B1767 B267 <- B265 Freq: 809.309 | |
9a5 #checkcastPP of ECX | |
9a5 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
9a8 MEMBAR-acquire | |
9a8 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
9ab NullCheck EAX | |
9ab | |
9ab B267: # B1766 B268 <- B266 Freq: 809.308 | |
9ab MOV EDX,[ESP + #48] | |
9af MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
9b2 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
9b5 NullCheck EDX | |
9b5 | |
9b5 B268: # B1028 B269 <- B267 Freq: 809.307 | |
9b5 MEMBAR-acquire | |
9b5 CMP EDI,EBX | |
9b7 Jne B1028 P=0.000000 C=6701.000000 | |
9b7 | |
9bd B269: # B270 <- B268 Freq: 809.307 | |
9bd MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
9bd | |
9c0 B270: # B1764 B271 <- B269 B1029 Freq: 809.307 | |
9c0 MOV ECX,[EAX + #4] | |
9c3 NullCheck EAX | |
9c3 | |
9c3 B271: # B1763 B272 <- B270 Freq: 809.306 | |
9c3 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
9c9 Jne,u B1763 P=0.000001 C=-1.000000 | |
9c9 | |
9cf B272: # B1762 B273 <- B271 Freq: 809.305 | |
9cf #checkcastPP of EAX | |
9cf MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
9d5 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
9d8 MOV ECX,[EBX + #4] | |
9db NullCheck EBX | |
9db | |
9db B273: # B1761 B274 <- B272 Freq: 809.305 | |
9db CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
9e1 Jne,u B1761 P=0.000000 C=-1.000000 | |
9e1 | |
9e7 B274: # B1760 B275 <- B273 Freq: 809.305 | |
9e7 MOV EBX,[ESP + #40] | |
9eb MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
9ee TEST EDI,EDI | |
9f0 Jeq B1760 P=0.000001 C=-1.000000 | |
9f0 | |
9f6 B275: # B1759 B276 <- B274 Freq: 809.304 | |
9f6 MOV ECX,[ESP + #44] | |
9fa MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
9fd MOV EBX,[EDI + #8] | |
a00 NullCheck EDI | |
a00 | |
a00 B276: # B1758 B277 <- B275 Freq: 809.303 | |
a00 CMPu EBX,#20 | |
a03 Jle,u B1758 P=0.000001 C=-1.000000 | |
a03 | |
a09 B277: # B1757 B278 <- B276 Freq: 809.302 | |
a09 MOV ECX,[EDI + #92] | |
a0c MOV EDI,[ECX + #4] | |
a0f NullCheck ECX | |
a0f | |
a0f B278: # B1756 B279 <- B277 Freq: 809.301 | |
a0f CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
a15 Jne,u B1756 P=0.000000 C=-1.000000 | |
a15 | |
a1b B279: # B1755 B280 <- B278 Freq: 809.301 | |
a1b #checkcastPP of ECX | |
a1b MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
a1e MEMBAR-acquire | |
a1e MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
a21 NullCheck EBX | |
a21 | |
a21 B280: # B1754 B281 <- B279 Freq: 809.301 | |
a21 MOV EDI,[ESP + #48] | |
a25 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
a28 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
a2b NullCheck EAX | |
a2b | |
a2b B281: # B1030 B282 <- B280 Freq: 809.3 | |
a2b MEMBAR-acquire | |
a2b CMP ESI,EDI | |
a2d Jne B1030 P=0.000000 C=6701.000000 | |
a2d | |
a33 B282: # B283 <- B281 Freq: 809.299 | |
a33 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
a33 | |
a36 B283: # B1752 B284 <- B282 B1031 Freq: 809.3 | |
a36 MOV EBX,[EAX + #4] | |
a39 NullCheck EAX | |
a39 | |
a39 B284: # B1751 B285 <- B283 Freq: 809.299 | |
a39 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
a3f Jne,u B1751 P=0.000001 C=-1.000000 | |
a3f | |
a45 B285: # B1750 B286 <- B284 Freq: 809.298 | |
a45 #checkcastPP of EAX | |
a45 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
a4b MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
a4e MOV EDI,[EAX + #4] | |
a51 NullCheck EAX | |
a51 | |
a51 B286: # B1749 B287 <- B285 Freq: 809.297 | |
a51 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
a57 Jne,u B1749 P=0.000000 C=-1.000000 | |
a57 | |
a5d B287: # B1748 B288 <- B286 Freq: 809.297 | |
a5d MOV ECX,[ESP + #40] | |
a61 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
a64 TEST EBX,EBX | |
a66 Jeq B1748 P=0.000001 C=-1.000000 | |
a66 | |
a6c B288: # B1747 B289 <- B287 Freq: 809.296 | |
a6c MOV EBX,[ESP + #44] | |
a70 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
a73 MOV ECX,[EBX + #8] | |
a76 NullCheck EBX | |
a76 | |
a76 B289: # B1746 B290 <- B288 Freq: 809.296 | |
a76 CMPu ECX,#21 | |
a79 Jle,u B1746 P=0.000001 C=-1.000000 | |
a79 | |
a7f B290: # B1745 B291 <- B289 Freq: 809.295 | |
a7f MOV ECX,[EBX + #96] | |
a82 MOV EBX,[ECX + #4] | |
a85 NullCheck ECX | |
a85 | |
a85 B291: # B1744 B292 <- B290 Freq: 809.294 | |
a85 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
a8b Jne,u B1744 P=0.000000 C=-1.000000 | |
a8b | |
a91 B292: # B1743 B293 <- B291 Freq: 809.294 | |
a91 #checkcastPP of ECX | |
a91 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
a94 MEMBAR-acquire | |
a94 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
a97 NullCheck EAX | |
a97 | |
a97 B293: # B1742 B294 <- B292 Freq: 809.293 | |
a97 MOV EDX,[ESP + #48] | |
a9b MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
a9e MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
aa1 NullCheck EDX | |
aa1 | |
aa1 B294: # B1032 B295 <- B293 Freq: 809.292 | |
aa1 MEMBAR-acquire | |
aa1 CMP EDI,EBX | |
aa3 Jne B1032 P=0.000000 C=6701.000000 | |
aa3 | |
aa9 B295: # B296 <- B294 Freq: 809.292 | |
aa9 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
aa9 | |
aac B296: # B1740 B297 <- B295 B1033 Freq: 809.292 | |
aac MOV ECX,[EAX + #4] | |
aaf NullCheck EAX | |
aaf | |
aaf B297: # B1739 B298 <- B296 Freq: 809.292 | |
aaf CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
ab5 Jne,u B1739 P=0.000001 C=-1.000000 | |
ab5 | |
abb B298: # B1738 B299 <- B297 Freq: 809.291 | |
abb #checkcastPP of EAX | |
abb MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
ac1 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
ac4 MOV ECX,[EBX + #4] | |
ac7 NullCheck EBX | |
ac7 | |
ac7 B299: # B1737 B300 <- B298 Freq: 809.29 | |
ac7 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
acd Jne,u B1737 P=0.000000 C=-1.000000 | |
acd | |
ad3 B300: # B1736 B301 <- B299 Freq: 809.29 | |
ad3 MOV EBX,[ESP + #40] | |
ad7 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
ada TEST EDI,EDI | |
adc Jeq B1736 P=0.000001 C=-1.000000 | |
adc | |
ae2 B301: # B1735 B302 <- B300 Freq: 809.289 | |
ae2 MOV ECX,[ESP + #44] | |
ae6 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
ae9 MOV EBX,[EDI + #8] | |
aec NullCheck EDI | |
aec | |
aec B302: # B1734 B303 <- B301 Freq: 809.288 | |
aec CMPu EBX,#22 | |
aef Jle,u B1734 P=0.000001 C=-1.000000 | |
aef | |
af5 B303: # B1733 B304 <- B302 Freq: 809.287 | |
af5 MOV ECX,[EDI + #100] | |
af8 MOV EDI,[ECX + #4] | |
afb NullCheck ECX | |
afb | |
afb B304: # B1732 B305 <- B303 Freq: 809.287 | |
afb CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
b01 Jne,u B1732 P=0.000000 C=-1.000000 | |
b01 | |
b07 B305: # B1731 B306 <- B304 Freq: 809.287 | |
b07 #checkcastPP of ECX | |
b07 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
b0a MEMBAR-acquire | |
b0a MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
b0d NullCheck EBX | |
b0d | |
b0d B306: # B1730 B307 <- B305 Freq: 809.286 | |
b0d MOV EDI,[ESP + #48] | |
b11 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
b14 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
b17 NullCheck EAX | |
b17 | |
b17 B307: # B1034 B308 <- B306 Freq: 809.285 | |
b17 MEMBAR-acquire | |
b17 CMP ESI,EDI | |
b19 Jne B1034 P=0.000000 C=6701.000000 | |
b19 | |
b1f B308: # B309 <- B307 Freq: 809.285 | |
b1f MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
b1f | |
b22 B309: # B1728 B310 <- B308 B1035 Freq: 809.285 | |
b22 MOV EBX,[EAX + #4] | |
b25 NullCheck EAX | |
b25 | |
b25 B310: # B1727 B311 <- B309 Freq: 809.284 | |
b25 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
b2b Jne,u B1727 P=0.000001 C=-1.000000 | |
b2b | |
b31 B311: # B1726 B312 <- B310 Freq: 809.283 | |
b31 #checkcastPP of EAX | |
b31 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
b37 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
b3a MOV EDI,[EAX + #4] | |
b3d NullCheck EAX | |
b3d | |
b3d B312: # B1725 B313 <- B311 Freq: 809.283 | |
b3d CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
b43 Jne,u B1725 P=0.000000 C=-1.000000 | |
b43 | |
b49 B313: # B1724 B314 <- B312 Freq: 809.283 | |
b49 MOV ECX,[ESP + #40] | |
b4d MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
b50 TEST EBX,EBX | |
b52 Jeq B1724 P=0.000001 C=-1.000000 | |
b52 | |
b58 B314: # B1723 B315 <- B313 Freq: 809.282 | |
b58 MOV EBX,[ESP + #44] | |
b5c MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
b5f MOV ECX,[EBX + #8] | |
b62 NullCheck EBX | |
b62 | |
b62 B315: # B1722 B316 <- B314 Freq: 809.281 | |
b62 CMPu ECX,#23 | |
b65 Jle,u B1722 P=0.000001 C=-1.000000 | |
b65 | |
b6b B316: # B1721 B317 <- B315 Freq: 809.28 | |
b6b MOV ECX,[EBX + #104] | |
b6e MOV EBX,[ECX + #4] | |
b71 NullCheck ECX | |
b71 | |
b71 B317: # B1720 B318 <- B316 Freq: 809.279 | |
b71 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
b77 Jne,u B1720 P=0.000000 C=-1.000000 | |
b77 | |
b7d B318: # B1719 B319 <- B317 Freq: 809.279 | |
b7d #checkcastPP of ECX | |
b7d MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
b80 MEMBAR-acquire | |
b80 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
b83 NullCheck EAX | |
b83 | |
b83 B319: # B1718 B320 <- B318 Freq: 809.278 | |
b83 MOV EDX,[ESP + #48] | |
b87 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
b8a MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
b8d NullCheck EDX | |
b8d | |
b8d B320: # B1036 B321 <- B319 Freq: 809.278 | |
b8d MEMBAR-acquire | |
b8d CMP EDI,EBX | |
b8f Jne B1036 P=0.000000 C=6701.000000 | |
b8f | |
b95 B321: # B322 <- B320 Freq: 809.277 | |
b95 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
b95 | |
b98 B322: # B1716 B323 <- B321 B1037 Freq: 809.278 | |
b98 MOV ECX,[EAX + #4] | |
b9b NullCheck EAX | |
b9b | |
b9b B323: # B1715 B324 <- B322 Freq: 809.277 | |
b9b CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
ba1 Jne,u B1715 P=0.000001 C=-1.000000 | |
ba1 | |
ba7 B324: # B1714 B325 <- B323 Freq: 809.276 | |
ba7 #checkcastPP of EAX | |
ba7 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
bad MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
bb0 MOV ECX,[EBX + #4] | |
bb3 NullCheck EBX | |
bb3 | |
bb3 B325: # B1713 B326 <- B324 Freq: 809.275 | |
bb3 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
bb9 Jne,u B1713 P=0.000000 C=-1.000000 | |
bb9 | |
bbf B326: # B1712 B327 <- B325 Freq: 809.275 | |
bbf MOV EBX,[ESP + #40] | |
bc3 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
bc6 TEST EDI,EDI | |
bc8 Jeq B1712 P=0.000001 C=-1.000000 | |
bc8 | |
bce B327: # B1711 B328 <- B326 Freq: 809.274 | |
bce MOV ECX,[ESP + #44] | |
bd2 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
bd5 MOV EBX,[EDI + #8] | |
bd8 NullCheck EDI | |
bd8 | |
bd8 B328: # B1710 B329 <- B327 Freq: 809.273 | |
bd8 CMPu EBX,#24 | |
bdb Jle,u B1710 P=0.000001 C=-1.000000 | |
bdb | |
be1 B329: # B1709 B330 <- B328 Freq: 809.273 | |
be1 MOV ECX,[EDI + #108] | |
be4 MOV EDI,[ECX + #4] | |
be7 NullCheck ECX | |
be7 | |
be7 B330: # B1708 B331 <- B329 Freq: 809.272 | |
be7 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
bed Jne,u B1708 P=0.000000 C=-1.000000 | |
bed | |
bf3 B331: # B1707 B332 <- B330 Freq: 809.272 | |
bf3 #checkcastPP of ECX | |
bf3 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
bf6 MEMBAR-acquire | |
bf6 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
bf9 NullCheck EBX | |
bf9 | |
bf9 B332: # B1706 B333 <- B331 Freq: 809.271 | |
bf9 MOV EDI,[ESP + #48] | |
bfd MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
c00 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
c03 NullCheck EAX | |
c03 | |
c03 B333: # B1038 B334 <- B332 Freq: 809.27 | |
c03 MEMBAR-acquire | |
c03 CMP ESI,EDI | |
c05 Jne B1038 P=0.000000 C=6701.000000 | |
c05 | |
c0b B334: # B335 <- B333 Freq: 809.27 | |
c0b MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
c0b | |
c0e B335: # B1704 B336 <- B334 B1039 Freq: 809.27 | |
c0e MOV EBX,[EAX + #4] | |
c11 NullCheck EAX | |
c11 | |
c11 B336: # B1703 B337 <- B335 Freq: 809.269 | |
c11 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
c17 Jne,u B1703 P=0.000001 C=-1.000000 | |
c17 | |
c1d B337: # B1702 B338 <- B336 Freq: 809.269 | |
c1d #checkcastPP of EAX | |
c1d MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
c23 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
c26 MOV EDI,[EAX + #4] | |
c29 NullCheck EAX | |
c29 | |
c29 B338: # B1701 B339 <- B337 Freq: 809.268 | |
c29 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
c2f Jne,u B1701 P=0.000000 C=-1.000000 | |
c2f | |
c35 B339: # B1700 B340 <- B338 Freq: 809.268 | |
c35 MOV ECX,[ESP + #40] | |
c39 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
c3c TEST EBX,EBX | |
c3e Jeq B1700 P=0.000001 C=-1.000000 | |
c3e | |
c44 B340: # B1699 B341 <- B339 Freq: 809.267 | |
c44 MOV EBX,[ESP + #44] | |
c48 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
c4b MOV ECX,[EBX + #8] | |
c4e NullCheck EBX | |
c4e | |
c4e B341: # B1698 B342 <- B340 Freq: 809.266 | |
c4e CMPu ECX,#25 | |
c51 Jle,u B1698 P=0.000001 C=-1.000000 | |
c51 | |
c57 B342: # B1697 B343 <- B341 Freq: 809.265 | |
c57 MOV ECX,[EBX + #112] | |
c5a MOV EBX,[ECX + #4] | |
c5d NullCheck ECX | |
c5d | |
c5d B343: # B1696 B344 <- B342 Freq: 809.264 | |
c5d CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
c63 Jne,u B1696 P=0.000000 C=-1.000000 | |
c63 | |
c69 B344: # B1695 B345 <- B343 Freq: 809.264 | |
c69 #checkcastPP of ECX | |
c69 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
c6c MEMBAR-acquire | |
c6c MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
c6f NullCheck EAX | |
c6f | |
c6f B345: # B1694 B346 <- B344 Freq: 809.264 | |
c6f MOV EDX,[ESP + #48] | |
c73 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
c76 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
c79 NullCheck EDX | |
c79 | |
c79 B346: # B1040 B347 <- B345 Freq: 809.263 | |
c79 MEMBAR-acquire | |
c79 CMP EDI,EBX | |
c7b Jne B1040 P=0.000000 C=6701.000000 | |
c7b | |
c81 B347: # B348 <- B346 Freq: 809.262 | |
c81 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
c81 | |
c84 B348: # B1692 B349 <- B347 B1041 Freq: 809.263 | |
c84 MOV ECX,[EAX + #4] | |
c87 NullCheck EAX | |
c87 | |
c87 B349: # B1691 B350 <- B348 Freq: 809.262 | |
c87 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
c8d Jne,u B1691 P=0.000001 C=-1.000000 | |
c8d | |
c93 B350: # B1690 B351 <- B349 Freq: 809.261 | |
c93 #checkcastPP of EAX | |
c93 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
c99 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
c9c MOV ECX,[EBX + #4] | |
c9f NullCheck EBX | |
c9f | |
c9f B351: # B1689 B352 <- B350 Freq: 809.26 | |
c9f CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
ca5 Jne,u B1689 P=0.000000 C=-1.000000 | |
ca5 | |
cab B352: # B1688 B353 <- B351 Freq: 809.26 | |
cab MOV EBX,[ESP + #40] | |
caf MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
cb2 TEST EDI,EDI | |
cb4 Jeq B1688 P=0.000001 C=-1.000000 | |
cb4 | |
cba B353: # B1687 B354 <- B352 Freq: 809.26 | |
cba MOV ECX,[ESP + #44] | |
cbe MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
cc1 MOV EBX,[EDI + #8] | |
cc4 NullCheck EDI | |
cc4 | |
cc4 B354: # B1686 B355 <- B353 Freq: 809.259 | |
cc4 CMPu EBX,#26 | |
cc7 Jle,u B1686 P=0.000001 C=-1.000000 | |
cc7 | |
ccd B355: # B1685 B356 <- B354 Freq: 809.258 | |
ccd MOV ECX,[EDI + #116] | |
cd0 MOV EDI,[ECX + #4] | |
cd3 NullCheck ECX | |
cd3 | |
cd3 B356: # B1684 B357 <- B355 Freq: 809.257 | |
cd3 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
cd9 Jne,u B1684 P=0.000000 C=-1.000000 | |
cd9 | |
cdf B357: # B1683 B358 <- B356 Freq: 809.257 | |
cdf #checkcastPP of ECX | |
cdf MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
ce2 MEMBAR-acquire | |
ce2 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
ce5 NullCheck EBX | |
ce5 | |
ce5 B358: # B1682 B359 <- B357 Freq: 809.256 | |
ce5 MOV EDI,[ESP + #48] | |
ce9 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
cec MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
cef NullCheck EAX | |
cef | |
cef B359: # B1042 B360 <- B358 Freq: 809.255 | |
cef MEMBAR-acquire | |
cef CMP ESI,EDI | |
cf1 Jne B1042 P=0.000000 C=6701.000000 | |
cf1 | |
cf7 B360: # B361 <- B359 Freq: 809.255 | |
cf7 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
cf7 | |
cfa B361: # B1680 B362 <- B360 B1043 Freq: 809.255 | |
cfa MOV EBX,[EAX + #4] | |
cfd NullCheck EAX | |
cfd | |
cfd B362: # B1679 B363 <- B361 Freq: 809.255 | |
cfd CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
d03 Jne,u B1679 P=0.000001 C=-1.000000 | |
d03 | |
d09 B363: # B1678 B364 <- B362 Freq: 809.254 | |
d09 #checkcastPP of EAX | |
d09 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
d0f MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
d12 MOV EDI,[EAX + #4] | |
d15 NullCheck EAX | |
d15 | |
d15 B364: # B1677 B365 <- B363 Freq: 809.253 | |
d15 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
d1b Jne,u B1677 P=0.000000 C=-1.000000 | |
d1b | |
d21 B365: # B1676 B366 <- B364 Freq: 809.253 | |
d21 MOV ECX,[ESP + #40] | |
d25 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
d28 TEST EBX,EBX | |
d2a Jeq B1676 P=0.000001 C=-1.000000 | |
d2a | |
d30 B366: # B1675 B367 <- B365 Freq: 809.252 | |
d30 MOV EBX,[ESP + #44] | |
d34 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
d37 MOV ECX,[EBX + #8] | |
d3a NullCheck EBX | |
d3a | |
d3a B367: # B1674 B368 <- B366 Freq: 809.251 | |
d3a CMPu ECX,#27 | |
d3d Jle,u B1674 P=0.000001 C=-1.000000 | |
d3d | |
d43 B368: # B1673 B369 <- B367 Freq: 809.251 | |
d43 MOV ECX,[EBX + #120] | |
d46 MOV EBX,[ECX + #4] | |
d49 NullCheck ECX | |
d49 | |
d49 B369: # B1672 B370 <- B368 Freq: 809.25 | |
d49 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
d4f Jne,u B1672 P=0.000000 C=-1.000000 | |
d4f | |
d55 B370: # B1671 B371 <- B369 Freq: 809.25 | |
d55 #checkcastPP of ECX | |
d55 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
d58 MEMBAR-acquire | |
d58 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
d5b NullCheck EAX | |
d5b | |
d5b B371: # B1670 B372 <- B370 Freq: 809.249 | |
d5b MOV EDX,[ESP + #48] | |
d5f MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
d62 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
d65 NullCheck EDX | |
d65 | |
d65 B372: # B1044 B373 <- B371 Freq: 809.248 | |
d65 MEMBAR-acquire | |
d65 CMP EDI,EBX | |
d67 Jne B1044 P=0.000000 C=6701.000000 | |
d67 | |
d6d B373: # B374 <- B372 Freq: 809.248 | |
d6d MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
d6d | |
d70 B374: # B1668 B375 <- B373 B1045 Freq: 809.248 | |
d70 MOV ECX,[EAX + #4] | |
d73 NullCheck EAX | |
d73 | |
d73 B375: # B1667 B376 <- B374 Freq: 809.247 | |
d73 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
d79 Jne,u B1667 P=0.000001 C=-1.000000 | |
d79 | |
d7f B376: # B1666 B377 <- B375 Freq: 809.246 | |
d7f #checkcastPP of EAX | |
d7f MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
d85 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
d88 MOV ECX,[EBX + #4] | |
d8b NullCheck EBX | |
d8b | |
d8b B377: # B1665 B378 <- B376 Freq: 809.246 | |
d8b CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
d91 Jne,u B1665 P=0.000000 C=-1.000000 | |
d91 | |
d97 B378: # B1664 B379 <- B377 Freq: 809.246 | |
d97 MOV EBX,[ESP + #40] | |
d9b MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
d9e TEST EDI,EDI | |
da0 Jeq B1664 P=0.000001 C=-1.000000 | |
da0 | |
da6 B379: # B1663 B380 <- B378 Freq: 809.245 | |
da6 MOV ECX,[ESP + #44] | |
daa MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
dad MOV EBX,[EDI + #8] | |
db0 NullCheck EDI | |
db0 | |
db0 B380: # B1662 B381 <- B379 Freq: 809.244 | |
db0 CMPu EBX,#28 | |
db3 Jle,u B1662 P=0.000001 C=-1.000000 | |
db3 | |
db9 B381: # B1661 B382 <- B380 Freq: 809.243 | |
db9 MOV ECX,[EDI + #124] | |
dbc MOV EDI,[ECX + #4] | |
dbf NullCheck ECX | |
dbf | |
dbf B382: # B1660 B383 <- B381 Freq: 809.242 | |
dbf CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
dc5 Jne,u B1660 P=0.000000 C=-1.000000 | |
dc5 | |
dcb B383: # B1659 B384 <- B382 Freq: 809.242 | |
dcb #checkcastPP of ECX | |
dcb MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
dce MEMBAR-acquire | |
dce MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
dd1 NullCheck EBX | |
dd1 | |
dd1 B384: # B1658 B385 <- B383 Freq: 809.242 | |
dd1 MOV EDI,[ESP + #48] | |
dd5 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
dd8 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
ddb NullCheck EAX | |
ddb | |
ddb B385: # B1046 B386 <- B384 Freq: 809.241 | |
ddb MEMBAR-acquire | |
ddb CMP ESI,EDI | |
ddd Jne B1046 P=0.000000 C=6701.000000 | |
ddd | |
de3 B386: # B387 <- B385 Freq: 809.24 | |
de3 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
de3 | |
de6 B387: # B1656 B388 <- B386 B1047 Freq: 809.241 | |
de6 MOV EBX,[EAX + #4] | |
de9 NullCheck EAX | |
de9 | |
de9 B388: # B1655 B389 <- B387 Freq: 809.24 | |
de9 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
def Jne,u B1655 P=0.000001 C=-1.000000 | |
def | |
df5 B389: # B1654 B390 <- B388 Freq: 809.239 | |
df5 #checkcastPP of EAX | |
df5 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
dfb MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
dfe MOV EDI,[EAX + #4] | |
e01 NullCheck EAX | |
e01 | |
e01 B390: # B1653 B391 <- B389 Freq: 809.238 | |
e01 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
e07 Jne,u B1653 P=0.000000 C=-1.000000 | |
e07 | |
e0d B391: # B1652 B392 <- B390 Freq: 809.238 | |
e0d MOV ECX,[ESP + #40] | |
e11 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
e14 TEST EBX,EBX | |
e16 Jeq B1652 P=0.000001 C=-1.000000 | |
e16 | |
e1c B392: # B1651 B393 <- B391 Freq: 809.237 | |
e1c MOV EBX,[ESP + #44] | |
e20 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
e23 MOV ECX,[EBX + #8] | |
e26 NullCheck EBX | |
e26 | |
e26 B393: # B1650 B394 <- B392 Freq: 809.237 | |
e26 CMPu ECX,#29 | |
e29 Jle,u B1650 P=0.000001 C=-1.000000 | |
e29 | |
e2f B394: # B1649 B395 <- B393 Freq: 809.236 | |
e2f MOV ECX,[EBX + #128] | |
e35 MOV EBX,[ECX + #4] | |
e38 NullCheck ECX | |
e38 | |
e38 B395: # B1648 B396 <- B394 Freq: 809.235 | |
e38 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
e3e Jne,u B1648 P=0.000000 C=-1.000000 | |
e3e | |
e44 B396: # B1647 B397 <- B395 Freq: 809.235 | |
e44 #checkcastPP of ECX | |
e44 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
e47 MEMBAR-acquire | |
e47 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
e4a NullCheck EAX | |
e4a | |
e4a B397: # B1646 B398 <- B396 Freq: 809.234 | |
e4a MOV EDX,[ESP + #48] | |
e4e MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
e51 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
e54 NullCheck EDX | |
e54 | |
e54 B398: # B1048 B399 <- B397 Freq: 809.233 | |
e54 MEMBAR-acquire | |
e54 CMP EDI,EBX | |
e56 Jne B1048 P=0.000000 C=6701.000000 | |
e56 | |
e5c B399: # B400 <- B398 Freq: 809.233 | |
e5c MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
e5c | |
e5f B400: # B1644 B401 <- B399 B1049 Freq: 809.233 | |
e5f MOV ECX,[EAX + #4] | |
e62 NullCheck EAX | |
e62 | |
e62 B401: # B1643 B402 <- B400 Freq: 809.232 | |
e62 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
e68 Jne,u B1643 P=0.000001 C=-1.000000 | |
e68 | |
e6e B402: # B1642 B403 <- B401 Freq: 809.232 | |
e6e #checkcastPP of EAX | |
e6e MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
e74 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
e77 MOV ECX,[EBX + #4] | |
e7a NullCheck EBX | |
e7a | |
e7a B403: # B1641 B404 <- B402 Freq: 809.231 | |
e7a CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
e80 Jne,u B1641 P=0.000000 C=-1.000000 | |
e80 | |
e86 B404: # B1640 B405 <- B403 Freq: 809.231 | |
e86 MOV EBX,[ESP + #40] | |
e8a MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
e8d TEST EDI,EDI | |
e8f Jeq B1640 P=0.000001 C=-1.000000 | |
e8f | |
e95 B405: # B1639 B406 <- B404 Freq: 809.23 | |
e95 MOV ECX,[ESP + #44] | |
e99 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
e9c MOV EBX,[EDI + #8] | |
e9f NullCheck EDI | |
e9f | |
e9f B406: # B1638 B407 <- B405 Freq: 809.229 | |
e9f CMPu EBX,#30 | |
ea2 Jle,u B1638 P=0.000001 C=-1.000000 | |
ea2 | |
ea8 B407: # B1637 B408 <- B406 Freq: 809.228 | |
ea8 MOV ECX,[EDI + #132] | |
eae MOV EDI,[ECX + #4] | |
eb1 NullCheck ECX | |
eb1 | |
eb1 B408: # B1636 B409 <- B407 Freq: 809.228 | |
eb1 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
eb7 Jne,u B1636 P=0.000000 C=-1.000000 | |
eb7 | |
ebd B409: # B1635 B410 <- B408 Freq: 809.228 | |
ebd #checkcastPP of ECX | |
ebd MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
ec0 MEMBAR-acquire | |
ec0 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
ec3 NullCheck EBX | |
ec3 | |
ec3 B410: # B1634 B411 <- B409 Freq: 809.227 | |
ec3 MOV EDI,[ESP + #48] | |
ec7 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
eca MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
ecd NullCheck EAX | |
ecd | |
ecd B411: # B1050 B412 <- B410 Freq: 809.226 | |
ecd MEMBAR-acquire | |
ecd CMP ESI,EDI | |
ecf Jne B1050 P=0.000000 C=6701.000000 | |
ecf | |
ed5 B412: # B413 <- B411 Freq: 809.226 | |
ed5 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
ed5 | |
ed8 B413: # B1632 B414 <- B412 B1051 Freq: 809.226 | |
ed8 MOV EBX,[EAX + #4] | |
edb NullCheck EAX | |
edb | |
edb B414: # B1631 B415 <- B413 Freq: 809.225 | |
edb CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
ee1 Jne,u B1631 P=0.000001 C=-1.000000 | |
ee1 | |
ee7 B415: # B1630 B416 <- B414 Freq: 809.224 | |
ee7 #checkcastPP of EAX | |
ee7 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
eed MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
ef0 MOV EDI,[EAX + #4] | |
ef3 NullCheck EAX | |
ef3 | |
ef3 B416: # B1629 B417 <- B415 Freq: 809.223 | |
ef3 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
ef9 Jne,u B1629 P=0.000000 C=-1.000000 | |
ef9 | |
eff B417: # B1628 B418 <- B416 Freq: 809.223 | |
eff MOV ECX,[ESP + #40] | |
f03 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
f06 TEST EBX,EBX | |
f08 Jeq B1628 P=0.000001 C=-1.000000 | |
f08 | |
f0e B418: # B1627 B419 <- B417 Freq: 809.223 | |
f0e MOV EBX,[ESP + #44] | |
f12 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
f15 MOV ECX,[EBX + #8] | |
f18 NullCheck EBX | |
f18 | |
f18 B419: # B1626 B420 <- B418 Freq: 809.222 | |
f18 CMPu ECX,#31 | |
f1b Jle,u B1626 P=0.000001 C=-1.000000 | |
f1b | |
f21 B420: # B1625 B421 <- B419 Freq: 809.221 | |
f21 MOV ECX,[EBX + #136] | |
f27 MOV EBX,[ECX + #4] | |
f2a NullCheck ECX | |
f2a | |
f2a B421: # B1624 B422 <- B420 Freq: 809.22 | |
f2a CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
f30 Jne,u B1624 P=0.000000 C=-1.000000 | |
f30 | |
f36 B422: # B1623 B423 <- B421 Freq: 809.22 | |
f36 #checkcastPP of ECX | |
f36 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
f39 MEMBAR-acquire | |
f39 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
f3c NullCheck EAX | |
f3c | |
f3c B423: # B1622 B424 <- B422 Freq: 809.219 | |
f3c MOV EDX,[ESP + #48] | |
f40 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
f43 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
f46 NullCheck EDX | |
f46 | |
f46 B424: # B1052 B425 <- B423 Freq: 809.219 | |
f46 MEMBAR-acquire | |
f46 CMP EDI,EBX | |
f48 Jne B1052 P=0.000000 C=6701.000000 | |
f48 | |
f4e B425: # B426 <- B424 Freq: 809.218 | |
f4e MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
f4e | |
f51 B426: # B1620 B427 <- B425 B1053 Freq: 809.219 | |
f51 MOV ECX,[EAX + #4] | |
f54 NullCheck EAX | |
f54 | |
f54 B427: # B1619 B428 <- B426 Freq: 809.218 | |
f54 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
f5a Jne,u B1619 P=0.000001 C=-1.000000 | |
f5a | |
f60 B428: # B1618 B429 <- B427 Freq: 809.217 | |
f60 #checkcastPP of EAX | |
f60 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
f66 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
f69 MOV ECX,[EBX + #4] | |
f6c NullCheck EBX | |
f6c | |
f6c B429: # B1617 B430 <- B428 Freq: 809.216 | |
f6c CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
f72 Jne,u B1617 P=0.000000 C=-1.000000 | |
f72 | |
f78 B430: # B1616 B431 <- B429 Freq: 809.216 | |
f78 MOV EBX,[ESP + #40] | |
f7c MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
f7f TEST EDI,EDI | |
f81 Jeq B1616 P=0.000001 C=-1.000000 | |
f81 | |
f87 B431: # B1615 B432 <- B430 Freq: 809.215 | |
f87 MOV ECX,[ESP + #44] | |
f8b MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
f8e MOV EBX,[EDI + #8] | |
f91 NullCheck EDI | |
f91 | |
f91 B432: # B1614 B433 <- B431 Freq: 809.214 | |
f91 CMPu EBX,#32 | |
f94 Jle,u B1614 P=0.000001 C=-1.000000 | |
f94 | |
f9a B433: # B1613 B434 <- B432 Freq: 809.214 | |
f9a MOV ECX,[EDI + #140] | |
fa0 MOV EDI,[ECX + #4] | |
fa3 NullCheck ECX | |
fa3 | |
fa3 B434: # B1612 B435 <- B433 Freq: 809.213 | |
fa3 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
fa9 Jne,u B1612 P=0.000000 C=-1.000000 | |
fa9 | |
faf B435: # B1611 B436 <- B434 Freq: 809.213 | |
faf #checkcastPP of ECX | |
faf MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
fb2 MEMBAR-acquire | |
fb2 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
fb5 NullCheck EBX | |
fb5 | |
fb5 B436: # B1610 B437 <- B435 Freq: 809.212 | |
fb5 MOV EDI,[ESP + #48] | |
fb9 MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
fbc MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
fbf NullCheck EAX | |
fbf | |
fbf B437: # B1054 B438 <- B436 Freq: 809.211 | |
fbf MEMBAR-acquire | |
fbf CMP ESI,EDI | |
fc1 Jne B1054 P=0.000000 C=6701.000000 | |
fc1 | |
fc7 B438: # B439 <- B437 Freq: 809.211 | |
fc7 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
fc7 | |
fca B439: # B1608 B440 <- B438 B1055 Freq: 809.211 | |
fca MOV EBX,[EAX + #4] | |
fcd NullCheck EAX | |
fcd | |
fcd B440: # B1607 B441 <- B439 Freq: 809.21 | |
fcd CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
fd3 Jne,u B1607 P=0.000001 C=-1.000000 | |
fd3 | |
fd9 B441: # B1606 B442 <- B440 Freq: 809.21 | |
fd9 #checkcastPP of EAX | |
fd9 MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
fdf MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
fe2 MOV EDI,[EAX + #4] | |
fe5 NullCheck EAX | |
fe5 | |
fe5 B442: # B1605 B443 <- B441 Freq: 809.209 | |
fe5 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
feb Jne,u B1605 P=0.000000 C=-1.000000 | |
feb | |
ff1 B443: # B1604 B444 <- B442 Freq: 809.209 | |
ff1 MOV ECX,[ESP + #40] | |
ff5 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
ff8 TEST EBX,EBX | |
ffa Jeq B1604 P=0.000001 C=-1.000000 | |
ffa | |
1000 B444: # B1603 B445 <- B443 Freq: 809.208 | |
1000 MOV EBX,[ESP + #44] | |
1004 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1007 MOV ECX,[EBX + #8] | |
100a NullCheck EBX | |
100a | |
100a B445: # B1602 B446 <- B444 Freq: 809.207 | |
100a CMPu ECX,#33 | |
100d Jle,u B1602 P=0.000001 C=-1.000000 | |
100d | |
1013 B446: # B1601 B447 <- B445 Freq: 809.206 | |
1013 MOV ECX,[EBX + #144] | |
1019 MOV EBX,[ECX + #4] | |
101c NullCheck ECX | |
101c | |
101c B447: # B1600 B448 <- B446 Freq: 809.205 | |
101c CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
1022 Jne,u B1600 P=0.000000 C=-1.000000 | |
1022 | |
1028 B448: # B1599 B449 <- B447 Freq: 809.205 | |
1028 #checkcastPP of ECX | |
1028 MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
102b MEMBAR-acquire | |
102b MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
102e NullCheck EAX | |
102e | |
102e B449: # B1598 B450 <- B448 Freq: 809.205 | |
102e MOV EDX,[ESP + #48] | |
1032 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
1035 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
1038 NullCheck EDX | |
1038 | |
1038 B450: # B1056 B451 <- B449 Freq: 809.204 | |
1038 MEMBAR-acquire | |
1038 CMP EDI,EBX | |
103a Jne B1056 P=0.000000 C=6701.000000 | |
103a | |
1040 B451: # B452 <- B450 Freq: 809.203 | |
1040 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
1040 | |
1043 B452: # B1596 B453 <- B451 B1057 Freq: 809.204 | |
1043 MOV ECX,[EAX + #4] | |
1046 NullCheck EAX | |
1046 | |
1046 B453: # B1595 B454 <- B452 Freq: 809.203 | |
1046 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
104c Jne,u B1595 P=0.000001 C=-1.000000 | |
104c | |
1052 B454: # B1594 B455 <- B453 Freq: 809.202 | |
1052 #checkcastPP of EAX | |
1052 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
1058 MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
105b MOV ECX,[EBX + #4] | |
105e NullCheck EBX | |
105e | |
105e B455: # B1593 B456 <- B454 Freq: 809.201 | |
105e CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
1064 Jne,u B1593 P=0.000000 C=-1.000000 | |
1064 | |
106a B456: # B1592 B457 <- B455 Freq: 809.201 | |
106a MOV EBX,[ESP + #40] | |
106e MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
1071 TEST EDI,EDI | |
1073 Jeq B1592 P=0.000001 C=-1.000000 | |
1073 | |
1079 B457: # B1591 B458 <- B456 Freq: 809.201 | |
1079 MOV ECX,[ESP + #44] | |
107d MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1080 MOV EBX,[EDI + #8] | |
1083 NullCheck EDI | |
1083 | |
1083 B458: # B1590 B459 <- B457 Freq: 809.2 | |
1083 CMPu EBX,#34 | |
1086 Jle,u B1590 P=0.000001 C=-1.000000 | |
1086 | |
108c B459: # B1589 B460 <- B458 Freq: 809.199 | |
108c MOV ECX,[EDI + #148] | |
1092 MOV EDI,[ECX + #4] | |
1095 NullCheck ECX | |
1095 | |
1095 B460: # B1588 B461 <- B459 Freq: 809.198 | |
1095 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
109b Jne,u B1588 P=0.000000 C=-1.000000 | |
109b | |
10a1 B461: # B1587 B462 <- B460 Freq: 809.198 | |
10a1 #checkcastPP of ECX | |
10a1 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
10a4 MEMBAR-acquire | |
10a4 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
10a7 NullCheck EBX | |
10a7 | |
10a7 B462: # B1586 B463 <- B461 Freq: 809.197 | |
10a7 MOV EDI,[ESP + #48] | |
10ab MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
10ae MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
10b1 NullCheck EAX | |
10b1 | |
10b1 B463: # B1058 B464 <- B462 Freq: 809.196 | |
10b1 MEMBAR-acquire | |
10b1 CMP ESI,EDI | |
10b3 Jne B1058 P=0.000000 C=6701.000000 | |
10b3 | |
10b9 B464: # B465 <- B463 Freq: 809.196 | |
10b9 MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
10b9 | |
10bc B465: # B1584 B466 <- B464 B1059 Freq: 809.196 | |
10bc MOV EBX,[EAX + #4] | |
10bf NullCheck EAX | |
10bf | |
10bf B466: # B1583 B467 <- B465 Freq: 809.196 | |
10bf CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
10c5 Jne,u B1583 P=0.000001 C=-1.000000 | |
10c5 | |
10cb B467: # B1582 B468 <- B466 Freq: 809.195 | |
10cb #checkcastPP of EAX | |
10cb MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
10d1 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
10d4 MOV EDI,[EAX + #4] | |
10d7 NullCheck EAX | |
10d7 | |
10d7 B468: # B1581 B469 <- B467 Freq: 809.194 | |
10d7 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
10dd Jne,u B1581 P=0.000000 C=-1.000000 | |
10dd | |
10e3 B469: # B1580 B470 <- B468 Freq: 809.194 | |
10e3 MOV ECX,[ESP + #40] | |
10e7 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
10ea TEST EBX,EBX | |
10ec Jeq B1580 P=0.000001 C=-1.000000 | |
10ec | |
10f2 B470: # B1579 B471 <- B469 Freq: 809.193 | |
10f2 MOV EBX,[ESP + #44] | |
10f6 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
10f9 MOV ECX,[EBX + #8] | |
10fc NullCheck EBX | |
10fc | |
10fc B471: # B1578 B472 <- B470 Freq: 809.192 | |
10fc CMPu ECX,#35 | |
10ff Jle,u B1578 P=0.000001 C=-1.000000 | |
10ff | |
1105 B472: # B1577 B473 <- B471 Freq: 809.191 | |
1105 MOV ECX,[EBX + #152] | |
110b MOV EBX,[ECX + #4] | |
110e NullCheck ECX | |
110e | |
110e B473: # B1576 B474 <- B472 Freq: 809.191 | |
110e CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
1114 Jne,u B1576 P=0.000000 C=-1.000000 | |
1114 | |
111a B474: # B1575 B475 <- B473 Freq: 809.191 | |
111a #checkcastPP of ECX | |
111a MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
111d MEMBAR-acquire | |
111d MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
1120 NullCheck EAX | |
1120 | |
1120 B475: # B1574 B476 <- B474 Freq: 809.19 | |
1120 MOV EDX,[ESP + #48] | |
1124 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
1127 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
112a NullCheck EDX | |
112a | |
112a B476: # B1060 B477 <- B475 Freq: 809.189 | |
112a MEMBAR-acquire | |
112a CMP EDI,EBX | |
112c Jne B1060 P=0.000000 C=6701.000000 | |
112c | |
1132 B477: # B478 <- B476 Freq: 809.189 | |
1132 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
1132 | |
1135 B478: # B1572 B479 <- B477 B1061 Freq: 809.189 | |
1135 MOV ECX,[EAX + #4] | |
1138 NullCheck EAX | |
1138 | |
1138 B479: # B1571 B480 <- B478 Freq: 809.188 | |
1138 CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
113e Jne,u B1571 P=0.000001 C=-1.000000 | |
113e | |
1144 B480: # B1570 B481 <- B479 Freq: 809.187 | |
1144 #checkcastPP of EAX | |
1144 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
114a MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
114d MOV ECX,[EBX + #4] | |
1150 NullCheck EBX | |
1150 | |
1150 B481: # B1569 B482 <- B480 Freq: 809.187 | |
1150 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
1156 Jne,u B1569 P=0.000000 C=-1.000000 | |
1156 | |
115c B482: # B1568 B483 <- B481 Freq: 809.187 | |
115c MOV EBX,[ESP + #40] | |
1160 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
1163 TEST EDI,EDI | |
1165 Jeq B1568 P=0.000001 C=-1.000000 | |
1165 | |
116b B483: # B1567 B484 <- B482 Freq: 809.186 | |
116b MOV ECX,[ESP + #44] | |
116f MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1172 MOV EBX,[EDI + #8] | |
1175 NullCheck EDI | |
1175 | |
1175 B484: # B1566 B485 <- B483 Freq: 809.185 | |
1175 CMPu EBX,#36 | |
1178 Jle,u B1566 P=0.000001 C=-1.000000 | |
1178 | |
117e B485: # B1565 B486 <- B484 Freq: 809.184 | |
117e MOV ECX,[EDI + #156] | |
1184 MOV EDI,[ECX + #4] | |
1187 NullCheck ECX | |
1187 | |
1187 B486: # B1564 B487 <- B485 Freq: 809.183 | |
1187 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
118d Jne,u B1564 P=0.000000 C=-1.000000 | |
118d | |
1193 B487: # B1563 B488 <- B486 Freq: 809.183 | |
1193 #checkcastPP of ECX | |
1193 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
1196 MEMBAR-acquire | |
1196 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
1199 NullCheck EBX | |
1199 | |
1199 B488: # B1562 B489 <- B487 Freq: 809.182 | |
1199 MOV EDI,[ESP + #48] | |
119d MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
11a0 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
11a3 NullCheck EAX | |
11a3 | |
11a3 B489: # B1062 B490 <- B488 Freq: 809.182 | |
11a3 MEMBAR-acquire | |
11a3 CMP ESI,EDI | |
11a5 Jne B1062 P=0.000000 C=6701.000000 | |
11a5 | |
11ab B490: # B491 <- B489 Freq: 809.181 | |
11ab MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
11ab | |
11ae B491: # B1560 B492 <- B490 B1063 Freq: 809.182 | |
11ae MOV EBX,[EAX + #4] | |
11b1 NullCheck EAX | |
11b1 | |
11b1 B492: # B1559 B493 <- B491 Freq: 809.181 | |
11b1 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
11b7 Jne,u B1559 P=0.000001 C=-1.000000 | |
11b7 | |
11bd B493: # B1558 B494 <- B492 Freq: 809.18 | |
11bd #checkcastPP of EAX | |
11bd MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
11c3 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
11c6 MOV EDI,[EAX + #4] | |
11c9 NullCheck EAX | |
11c9 | |
11c9 B494: # B1557 B495 <- B493 Freq: 809.179 | |
11c9 CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
11cf Jne,u B1557 P=0.000000 C=-1.000000 | |
11cf | |
11d5 B495: # B1556 B496 <- B494 Freq: 809.179 | |
11d5 MOV ECX,[ESP + #40] | |
11d9 MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
11dc TEST EBX,EBX | |
11de Jeq B1556 P=0.000001 C=-1.000000 | |
11de | |
11e4 B496: # B1555 B497 <- B495 Freq: 809.178 | |
11e4 MOV EBX,[ESP + #44] | |
11e8 MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
11eb MOV ECX,[EBX + #8] | |
11ee NullCheck EBX | |
11ee | |
11ee B497: # B1554 B498 <- B496 Freq: 809.178 | |
11ee CMPu ECX,#37 | |
11f1 Jle,u B1554 P=0.000001 C=-1.000000 | |
11f1 | |
11f7 B498: # B1553 B499 <- B497 Freq: 809.177 | |
11f7 MOV ECX,[EBX + #160] | |
11fd MOV EBX,[ECX + #4] | |
1200 NullCheck ECX | |
1200 | |
1200 B499: # B1552 B500 <- B498 Freq: 809.176 | |
1200 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
1206 Jne,u B1552 P=0.000000 C=-1.000000 | |
1206 | |
120c B500: # B1551 B501 <- B499 Freq: 809.176 | |
120c #checkcastPP of ECX | |
120c MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
120f MEMBAR-acquire | |
120f MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
1212 NullCheck EAX | |
1212 | |
1212 B501: # B1550 B502 <- B500 Freq: 809.175 | |
1212 MOV EDX,[ESP + #48] | |
1216 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
1219 MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
121c NullCheck EDX | |
121c | |
121c B502: # B1064 B503 <- B501 Freq: 809.174 | |
121c MEMBAR-acquire | |
121c CMP EDI,EBX | |
121e Jne B1064 P=0.000000 C=6701.000000 | |
121e | |
1224 B503: # B504 <- B502 Freq: 809.174 | |
1224 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
1224 | |
1227 B504: # B1548 B505 <- B503 B1065 Freq: 809.174 | |
1227 MOV ECX,[EAX + #4] | |
122a NullCheck EAX | |
122a | |
122a B505: # B1547 B506 <- B504 Freq: 809.173 | |
122a CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
1230 Jne,u B1547 P=0.000001 C=-1.000000 | |
1230 | |
1236 B506: # B1546 B507 <- B505 Freq: 809.173 | |
1236 #checkcastPP of EAX | |
1236 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
123c MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
123f MOV ECX,[EBX + #4] | |
1242 NullCheck EBX | |
1242 | |
1242 B507: # B1545 B508 <- B506 Freq: 809.172 | |
1242 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
1248 Jne,u B1545 P=0.000000 C=-1.000000 | |
1248 | |
124e B508: # B1544 B509 <- B507 Freq: 809.172 | |
124e MOV EBX,[ESP + #40] | |
1252 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
1255 TEST EDI,EDI | |
1257 Jeq B1544 P=0.000001 C=-1.000000 | |
1257 | |
125d B509: # B1543 B510 <- B508 Freq: 809.171 | |
125d MOV ECX,[ESP + #44] | |
1261 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1264 MOV EBX,[EDI + #8] | |
1267 NullCheck EDI | |
1267 | |
1267 B510: # B1542 B511 <- B509 Freq: 809.17 | |
1267 CMPu EBX,#38 | |
126a Jle,u B1542 P=0.000001 C=-1.000000 | |
126a | |
1270 B511: # B1541 B512 <- B510 Freq: 809.169 | |
1270 MOV ECX,[EDI + #164] | |
1276 MOV EDI,[ECX + #4] | |
1279 NullCheck ECX | |
1279 | |
1279 B512: # B1540 B513 <- B511 Freq: 809.169 | |
1279 CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
127f Jne,u B1540 P=0.000000 C=-1.000000 | |
127f | |
1285 B513: # B1539 B514 <- B512 Freq: 809.169 | |
1285 #checkcastPP of ECX | |
1285 MOV EBX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
1288 MEMBAR-acquire | |
1288 MOV ESI,[EBX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
128b NullCheck EBX | |
128b | |
128b B514: # B1538 B515 <- B513 Freq: 809.168 | |
128b MOV EDI,[ESP + #48] | |
128f MOV EAX,[EDI + #56] ! Field org/jruby/RubyModule.generation | |
1292 MOV EDI,[EAX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
1295 NullCheck EAX | |
1295 | |
1295 B515: # B1066 B516 <- B514 Freq: 809.167 | |
1295 MEMBAR-acquire | |
1295 CMP ESI,EDI | |
1297 Jne B1066 P=0.000000 C=6701.000000 | |
1297 | |
129d B516: # B517 <- B515 Freq: 809.167 | |
129d MOV EAX,[EBX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
129d | |
12a0 B517: # B1536 B518 <- B516 B1067 Freq: 809.167 | |
12a0 MOV EBX,[EAX + #4] | |
12a3 NullCheck EAX | |
12a3 | |
12a3 B518: # B1535 B519 <- B517 Freq: 809.166 | |
12a3 CMPu EBX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
12a9 Jne,u B1535 P=0.000001 C=-1.000000 | |
12a9 | |
12af B519: # B1534 B520 <- B518 Freq: 809.165 | |
12af #checkcastPP of EAX | |
12af MOV EBX,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
12b5 MOV EAX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
12b8 MOV EDI,[EAX + #4] | |
12bb NullCheck EAX | |
12bb | |
12bb B520: # B1533 B521 <- B519 Freq: 809.164 | |
12bb CMPu EDI,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
12c1 Jne,u B1533 P=0.000000 C=-1.000000 | |
12c1 | |
12c7 B521: # B1532 B522 <- B520 Freq: 809.164 | |
12c7 MOV ECX,[ESP + #40] | |
12cb MOV EBX,[ECX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
12ce TEST EBX,EBX | |
12d0 Jeq B1532 P=0.000001 C=-1.000000 | |
12d0 | |
12d6 B522: # B1531 B523 <- B521 Freq: 809.164 | |
12d6 MOV EBX,[ESP + #44] | |
12da MOV EBX,[EBX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
12dd MOV ECX,[EBX + #8] | |
12e0 NullCheck EBX | |
12e0 | |
12e0 B523: # B1530 B524 <- B522 Freq: 809.163 | |
12e0 CMPu ECX,#39 | |
12e3 Jle,u B1530 P=0.000001 C=-1.000000 | |
12e3 | |
12e9 B524: # B1529 B525 <- B523 Freq: 809.162 | |
12e9 MOV ECX,[EBX + #168] | |
12ef MOV EBX,[ECX + #4] | |
12f2 NullCheck ECX | |
12f2 | |
12f2 B525: # B1528 B526 <- B524 Freq: 809.161 | |
12f2 CMPu EBX,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
12f8 Jne,u B1528 P=0.000000 C=-1.000000 | |
12f8 | |
12fe B526: # B1527 B527 <- B525 Freq: 809.161 | |
12fe #checkcastPP of ECX | |
12fe MOV EAX,[ECX + #16] ! Field Volatileorg/jruby/runtime/callsite/CachingCallSite.cache | |
1301 MEMBAR-acquire | |
1301 MOV EDI,[EAX + #8] ! Field org/jruby/runtime/callsite/CacheEntry.generation | |
1304 NullCheck EAX | |
1304 | |
1304 B527: # B1526 B528 <- B526 Freq: 809.16 | |
1304 MOV EDX,[ESP + #48] | |
1308 MOV EDX,[EDX + #56] ! Field org/jruby/RubyModule.generation | |
130b MOV EBX,[EDX + #8] ! Field Volatileorg/jruby/RubyModule$Generation.hash | |
130e NullCheck EDX | |
130e | |
130e B528: # B1068 B529 <- B527 Freq: 809.159 | |
130e MEMBAR-acquire | |
130e CMP EDI,EBX | |
1310 Jne B1068 P=0.000000 C=6701.000000 | |
1310 | |
1316 B529: # B530 <- B528 Freq: 809.159 | |
1316 MOV EAX,[EAX + #12] ! Field org/jruby/runtime/callsite/CacheEntry.method | |
1316 | |
1319 B530: # B1524 B531 <- B529 B1069 Freq: 809.159 | |
1319 MOV ECX,[EAX + #4] | |
131c NullCheck EAX | |
131c | |
131c B531: # B1523 B532 <- B530 Freq: 809.159 | |
131c CMPu ECX,precise klass bench/language/bench_method_dispatch_onlyInvokermethod__0$RUBY$fooFixed0: 0x0892be68:Constant:exact * | |
1322 Jne,u B1523 P=0.000001 C=-1.000000 | |
1322 | |
1328 B532: # B1522 B533 <- B531 Freq: 809.158 | |
1328 #checkcastPP of EAX | |
1328 MOV EDI,[EBP + precise klass org/jruby/runtime/Block: 0x08929bf0:Constant:exact *] ! Field org/jruby/runtime/Block.NULL_BLOCK | |
132e MOV EBX,[EAX + #44] ! Field org/jruby/internal/runtime/methods/CompiledMethod.$scriptObject | |
1331 MOV ECX,[EBX + #4] | |
1334 NullCheck EBX | |
1334 | |
1334 B533: # B1521 B534 <- B532 Freq: 809.157 | |
1334 CMPu ECX,precise klass bench/language/bench_method_dispatch_only: 0x08929a10:Constant:exact * | |
133a Jne,u B1521 P=0.000000 C=-1.000000 | |
133a | |
1340 B534: # B1520 B535 <- B533 Freq: 809.157 | |
1340 MOV EBX,[ESP + #40] | |
1344 MOV EDI,[EBX + #40] ! Field org/jruby/runtime/ThreadContext.runtime | |
1347 TEST EDI,EDI | |
1349 Jeq B1520 P=0.000001 C=-1.000000 | |
1349 | |
134f B535: # B1519 B536 <- B534 Freq: 809.156 | |
134f MOV ECX,[ESP + #44] | |
1353 MOV EDI,[ECX + #12] ! Field org/jruby/ast/executable/AbstractScript.callSites | |
1356 MOV EBX,[EDI + #8] | |
1359 NullCheck EDI | |
1359 | |
1359 B536: # B1518 B537 <- B535 Freq: 809.155 | |
1359 CMPu EBX,#40 | |
135c Jle,u B1518 P=0.000001 C=-1.000000 | |
135c | |
1362 B537: # B1517 B538 <- B536 Freq: 809.155 | |
1362 MOV ECX,[EDI + #172] | |
1368 MOV EDI,[ECX + #4] | |
136b NullCheck ECX | |
136b | |
136b B538: # B1516 B539 <- B537 Freq: 809.154 | |
136b CMPu EDI,precise klass org/jruby/runtime/callsite/VariableCachingCallSite: 0x0892bdf8:Constant:exact * | |
1371 Jne,u B1516 P=0.000000 C=-1.000000 | |
1371 | |
1377 B539: # B1515 B540 <- B538 Freq: 809.154 | |
1377 #checkcastPP of ECX | |
1377 MOV EDX,[ESP + #40] | |
137b MOV EDI,[ESP + #48] | |
137f MOV [ESP + #0],EDI | |
1382 NOP # 1 bytes pad for loops and calls | |
1383 CALL,static org.jruby.runtime.callsite.CachingCallSite::getMethod | |
# bench.language.bench_method_dispatch_only::method__1$RUBY$invoking @ bci:1004 L[0]=esp + #44 L[1]=esp + #40 L[2]=esp + #80 L[3]=_ L[4]=_ L[5]=esp + #52 L[6]=_ L[7]=esp + #24 L[8]=_ L[9]=_ L[10]=esp + #48 L[11]=esp + #56 L[12]=_ L[13]=_ | |
# AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) | |
AllocatedObj(0x90f7bb20) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment