Created
October 30, 2019 10:47
-
-
Save martijndwars/e982fc7d71f98a4e50296b707dca442e to your computer and use it in GitHub Desktop.
Rewrite assembly addresses
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
import scala.io.Source | |
import scala.collection.mutable.Map | |
object Asm { | |
def main(args: Array[String]): Unit = { | |
val lines = Source.fromFile("input.txt").getLines.toList | |
val map = Map.empty[String, Int] | |
// First, map all addresses to integers | |
lines.filter(_.startsWith("0x")).map(_.take(18)).zipWithIndex.foreach { | |
case (line, index) => map.put(line.take(18), index) | |
} | |
// Second, replace all addresses by integers | |
for (line <- lines) { | |
println(replace(line, map)) | |
} | |
} | |
def replace(line: String, map: Map[String, Int]): String = | |
map.foldLeft(line) { | |
case (line, (k, v)) => line.replace(k, v.toString) | |
} | |
} |
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
0x000000010af4eda0: callq 0x0000000106e8a904 ; {runtime_call} | |
0x000000010af4eda5: data16 data16 nopw 0x0(%rax,%rax,1) | |
0x000000010af4edb0: mov %eax,-0x14000(%rsp) | |
0x000000010af4edb7: push %rbp | |
0x000000010af4edb8: sub $0x30,%rsp | |
0x000000010af4edbc: mov (%rsi),%ebx | |
0x000000010af4edbe: mov 0x8(%rsi),%rbp | |
0x000000010af4edc2: mov %rsi,%rdi | |
0x000000010af4edc5: movabs $0x106ee9b52,%r10 | |
0x000000010af4edcf: callq *%r10 | |
0x000000010af4edd2: test %rbp,%rbp | |
0x000000010af4edd5: je 0x000000010af4ef5f | |
0x000000010af4eddb: mov 0x8(%rbp),%r11d | |
0x000000010af4eddf: movabs $0x0,%r10 | |
0x000000010af4ede9: lea (%r10,%r11,8),%r10 | |
0x000000010af4eded: mov 0x30(%r10),%r10 | |
0x000000010af4edf1: movabs $0x7c009e180,%r11 ; {metadata('nl/martijndwars/simd/Copy$Context')} | |
0x000000010af4edfb: cmp %r11,%r10 | |
0x000000010af4edfe: jne 0x000000010af4efe1 ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
0x000000010af4ee04: mov %rbp,%r14 | |
0x000000010af4ee07: add $0x10,%r14 ;*getfield input | |
; - nl.martijndwars.simd.Copy::singleByte@15 (line 57) | |
0x000000010af4ee0b: mov %rbp,%rsi | |
0x000000010af4ee0e: add $0xc,%rsi ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
0x000000010af4ee12: cmp $0x400,%ebx | |
0x000000010af4ee18: jge 0x000000010af4ef53 ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
0x000000010af4ee1e: mov %ebx,%r10d | |
0x000000010af4ee21: inc %r10d | |
0x000000010af4ee24: mov $0x400,%r8d | |
0x000000010af4ee2a: xor %r9d,%r9d | |
0x000000010af4ee2d: xor %ecx,%ecx | |
0x000000010af4ee2f: cmp %r9d,%r10d | |
0x000000010af4ee32: cmovl %ecx,%r10d | |
0x000000010af4ee36: cmp %r8d,%r10d | |
0x000000010af4ee39: cmovg %r8d,%r10d ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ee3d: test %rbp,%rbp | |
0x000000010af4ee40: je 0x000000010af4efaf ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
0x000000010af4ee46: mov (%r14),%eax ;*getfield input | |
; - nl.martijndwars.simd.Copy::singleByte@15 (line 57) | |
0x000000010af4ee49: mov 0xc(%r12,%rax,8),%r11d ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; implicit exception: dispatches to 0x000000010af4effd | |
0x000000010af4ee4e: movzbl (%rsi),%ecx ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
0x000000010af4ee51: cmp %r11d,%ebx | |
0x000000010af4ee54: jae 0x000000010af4efc1 | |
0x000000010af4ee5a: lea (%r12,%rax,8),%r13 | |
0x000000010af4ee5e: movslq %ebx,%rdi | |
0x000000010af4ee61: movsbl 0x10(%r13,%rdi,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ee67: test %edx,%edx | |
0x000000010af4ee69: jl 0x000000010af4eff5 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4ee6f: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
0x000000010af4ee72: inc %ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
0x000000010af4ee74: cmp %r10d,%ebx | |
0x000000010af4ee77: jl 0x000000010af4ee3d ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
0x000000010af4ee79: cmp %r11d,%r8d | |
0x000000010af4ee7c: cmovg %r11d,%r8d | |
0x000000010af4ee80: mov %r8d,%ecx | |
0x000000010af4ee83: add $0xfffffff9,%ecx | |
0x000000010af4ee86: mov $0x80000000,%r10d | |
0x000000010af4ee8c: cmp %ecx,%r8d | |
0x000000010af4ee8f: cmovl %r10d,%ecx | |
0x000000010af4ee93: cmp %ecx,%ebx | |
0x000000010af4ee95: jge 0x000000010af4ef24 | |
0x000000010af4ee9b: nopl 0x0(%rax,%rax,1) | |
0x000000010af4eea0: movslq %ebx,%r10 | |
0x000000010af4eea3: movsbl 0x10(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eea9: test %edx,%edx | |
0x000000010af4eeab: jl 0x000000010af4ef73 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eeb1: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
0x000000010af4eeb4: movslq %ebx,%r10 | |
0x000000010af4eeb7: movsbl 0x11(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eebd: test %edx,%edx | |
0x000000010af4eebf: jl 0x000000010af4ef71 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eec5: movsbl 0x12(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eecb: test %edx,%edx | |
0x000000010af4eecd: jl 0x000000010af4ef91 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eed3: movsbl 0x13(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eed9: test %edx,%edx | |
0x000000010af4eedb: jl 0x000000010af4ef96 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eee1: movsbl 0x14(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eee7: test %edx,%edx | |
0x000000010af4eee9: jl 0x000000010af4ef9b ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eeef: movsbl 0x15(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4eef5: test %edx,%edx | |
0x000000010af4eef7: jl 0x000000010af4efa0 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4eefd: movsbl 0x16(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ef03: test %edx,%edx | |
0x000000010af4ef05: jl 0x000000010af4efa5 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4ef0b: movsbl 0x17(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ef11: test %edx,%edx | |
0x000000010af4ef13: jl 0x000000010af4efaa ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4ef19: add $0x8,%ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
0x000000010af4ef1c: cmp %ecx,%ebx | |
0x000000010af4ef1e: jl 0x000000010af4eea0 ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
0x000000010af4ef24: cmp $0x400,%ebx | |
0x000000010af4ef2a: jge 0x000000010af4ef53 ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ef2c: movzbl (%rsi),%r9d ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
0x000000010af4ef30: cmp %r11d,%ebx | |
0x000000010af4ef33: jae 0x000000010af4efc4 | |
0x000000010af4ef39: movslq %ebx,%r10 | |
0x000000010af4ef3c: movsbl 0x10(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
0x000000010af4ef42: test %edx,%edx | |
0x000000010af4ef44: jl 0x000000010af4ef73 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
0x000000010af4ef46: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
0x000000010af4ef49: inc %ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
0x000000010af4ef4b: cmp $0x400,%ebx | |
0x000000010af4ef51: jl 0x000000010af4ef2c | |
0x000000010af4ef53: add $0x30,%rsp | |
0x000000010af4ef57: pop %rbp | |
0x000000010af4ef58: test %eax,-0x4e79f5e(%rip) # 0x00000001060d5000 | |
; {poll_return} | |
0x000000010af4ef5e: retq | |
0x000000010af4ef5f: mov $0x10,%r14d | |
0x000000010af4ef65: xor %ebp,%ebp | |
0x000000010af4ef67: mov $0xc,%esi | |
0x000000010af4ef6c: jmpq 0x000000010af4ee12 | |
0x000000010af4ef71: inc %ebx ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
0x000000010af4ef73: mov $0xffffff65,%esi | |
0x000000010af4ef78: mov %ebx,(%rsp) | |
0x000000010af4ef7b: mov %edx,0x4(%rsp) | |
0x000000010af4ef7f: mov %r9d,0x10(%rsp) | |
0x000000010af4ef84: data16 xchg %ax,%ax | |
0x000000010af4ef87: callq 0x000000010ad896a0 ; OopMap{rbp=Oop off=492} | |
;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
; {runtime_call} | |
0x000000010af4ef8c: callq 0x0000000106e8a904 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
; {runtime_call} | |
0x000000010af4ef91: add $0x2,%ebx | |
0x000000010af4ef94: jmp 0x000000010af4ef73 | |
0x000000010af4ef96: add $0x3,%ebx | |
0x000000010af4ef99: jmp 0x000000010af4ef73 | |
0x000000010af4ef9b: add $0x4,%ebx | |
0x000000010af4ef9e: jmp 0x000000010af4ef73 | |
0x000000010af4efa0: add $0x5,%ebx | |
0x000000010af4efa3: jmp 0x000000010af4ef73 | |
0x000000010af4efa5: add $0x6,%ebx | |
0x000000010af4efa8: jmp 0x000000010af4ef73 | |
0x000000010af4efaa: add $0x7,%ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
0x000000010af4efad: jmp 0x000000010af4ef73 ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
0x000000010af4efaf: mov $0xfffffff6,%esi | |
0x000000010af4efb4: data16 xchg %ax,%ax | |
0x000000010af4efb7: callq 0x000000010ad896a0 ; OopMap{off=540} | |
;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
; {runtime_call} | |
0x000000010af4efbc: callq 0x0000000106e8a904 ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
; {runtime_call} | |
0x000000010af4efc1: mov %ecx,%r9d | |
0x000000010af4efc4: mov $0xffffffe4,%esi | |
0x000000010af4efc9: mov %ebx,0x4(%rsp) | |
0x000000010af4efcd: mov %r9d,0x10(%rsp) | |
0x000000010af4efd2: mov %eax,0x14(%rsp) | |
0x000000010af4efd6: nop | |
0x000000010af4efd7: callq 0x000000010ad896a0 ; OopMap{rbp=Oop [20]=NarrowOop off=572} | |
;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
0x000000010af4efdc: callq 0x0000000106e8a904 ; {runtime_call} | |
0x000000010af4efe1: mov $0xffffff9d,%esi | |
0x000000010af4efe6: mov %ebx,(%rsp) | |
0x000000010af4efe9: xchg %ax,%ax | |
0x000000010af4efeb: callq 0x000000010ad896a0 ; OopMap{rbp=Oop off=592} | |
;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
; {runtime_call} | |
0x000000010af4eff0: callq 0x0000000106e8a904 ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
; {runtime_call} | |
0x000000010af4eff5: mov %ecx,%r9d | |
0x000000010af4eff8: jmpq 0x000000010af4ef73 | |
0x000000010af4effd: mov $0xfffffff6,%esi | |
0x000000010af4f002: mov %ebx,%ebp | |
0x000000010af4f004: data16 xchg %ax,%ax | |
0x000000010af4f007: callq 0x000000010ad896a0 ; OopMap{off=620} | |
;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
0x000000010af4f00c: callq 0x0000000106e8a904 ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
0x000000010af4f011: hlt | |
0x000000010af4f012: hlt | |
0x000000010af4f013: hlt | |
0x000000010af4f014: hlt | |
0x000000010af4f015: hlt | |
0x000000010af4f016: hlt | |
0x000000010af4f017: hlt | |
0x000000010af4f018: hlt | |
0x000000010af4f019: hlt | |
0x000000010af4f01a: hlt | |
0x000000010af4f01b: hlt | |
0x000000010af4f01c: hlt | |
0x000000010af4f01d: hlt | |
0x000000010af4f01e: hlt | |
0x000000010af4f01f: hlt |
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
0: callq 0x0000000106e8a904 ; {runtime_call} | |
1: data16 data16 nopw 0x0(%rax,%rax,1) | |
2: mov %eax,-0x14000(%rsp) | |
3: push %rbp | |
4: sub $0x30,%rsp | |
5: mov (%rsi),%ebx | |
6: mov 0x8(%rsi),%rbp | |
7: mov %rsi,%rdi | |
8: movabs $0x106ee9b52,%r10 | |
9: callq *%r10 | |
10: test %rbp,%rbp | |
11: je 107 | |
12: mov 0x8(%rbp),%r11d | |
13: movabs $0x0,%r10 | |
14: lea (%r10,%r11,8),%r10 | |
15: mov 0x30(%r10),%r10 | |
16: movabs $0x7c009e180,%r11 ; {metadata('nl/martijndwars/simd/Copy$Context')} | |
17: cmp %r11,%r10 | |
18: jne 143 ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
19: mov %rbp,%r14 | |
20: add $0x10,%r14 ;*getfield input | |
; - nl.martijndwars.simd.Copy::singleByte@15 (line 57) | |
21: mov %rbp,%rsi | |
22: add $0xc,%rsi ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
23: cmp $0x400,%ebx | |
24: jge 103 ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
25: mov %ebx,%r10d | |
26: inc %r10d | |
27: mov $0x400,%r8d | |
28: xor %r9d,%r9d | |
29: xor %ecx,%ecx | |
30: cmp %r9d,%r10d | |
31: cmovl %ecx,%r10d | |
32: cmp %r8d,%r10d | |
33: cmovg %r8d,%r10d ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
34: test %rbp,%rbp | |
35: je 131 ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
36: mov (%r14),%eax ;*getfield input | |
; - nl.martijndwars.simd.Copy::singleByte@15 (line 57) | |
37: mov 0xc(%r12,%rax,8),%r11d ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; implicit exception: dispatches to 150 | |
38: movzbl (%rsi),%ecx ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
39: cmp %r11d,%ebx | |
40: jae 135 | |
41: lea (%r12,%rax,8),%r13 | |
42: movslq %ebx,%rdi | |
43: movsbl 0x10(%r13,%rdi,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
44: test %edx,%edx | |
45: jl 148 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
46: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
47: inc %ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
48: cmp %r10d,%ebx | |
49: jl 34 ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
50: cmp %r11d,%r8d | |
51: cmovg %r11d,%r8d | |
52: mov %r8d,%ecx | |
53: add $0xfffffff9,%ecx | |
54: mov $0x80000000,%r10d | |
55: cmp %ecx,%r8d | |
56: cmovl %r10d,%ecx | |
57: cmp %ecx,%ebx | |
58: jge 90 | |
59: nopl 0x0(%rax,%rax,1) | |
60: movslq %ebx,%r10 | |
61: movsbl 0x10(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
62: test %edx,%edx | |
63: jl 112 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
64: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
65: movslq %ebx,%r10 | |
66: movsbl 0x11(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
67: test %edx,%edx | |
68: jl 111 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
69: movsbl 0x12(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
70: test %edx,%edx | |
71: jl 119 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
72: movsbl 0x13(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
73: test %edx,%edx | |
74: jl 121 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
75: movsbl 0x14(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
76: test %edx,%edx | |
77: jl 123 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
78: movsbl 0x15(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
79: test %edx,%edx | |
80: jl 125 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
81: movsbl 0x16(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
82: test %edx,%edx | |
83: jl 127 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
84: movsbl 0x17(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
85: test %edx,%edx | |
86: jl 129 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
87: add $0x8,%ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
88: cmp %ecx,%ebx | |
89: jl 60 ;*if_icmpge | |
; - nl.martijndwars.simd.Copy::singleByte@6 (line 56) | |
90: cmp $0x400,%ebx | |
91: jge 103 ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
92: movzbl (%rsi),%r9d ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
93: cmp %r11d,%ebx | |
94: jae 136 | |
95: movslq %ebx,%r10 | |
96: movsbl 0x10(%r13,%r10,1),%edx ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
97: test %edx,%edx | |
98: jl 112 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
99: mov %r12b,(%rsi) ;*putfield result | |
; - nl.martijndwars.simd.Copy::singleByte@29 (line 57) | |
100: inc %ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
101: cmp $0x400,%ebx | |
102: jl 92 | |
103: add $0x30,%rsp | |
104: pop %rbp | |
105: test %eax,-0x4e79f5e(%rip) # 0x00000001060d5000 | |
; {poll_return} | |
106: retq | |
107: mov $0x10,%r14d | |
108: xor %ebp,%ebp | |
109: mov $0xc,%esi | |
110: jmpq 23 | |
111: inc %ebx ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
112: mov $0xffffff65,%esi | |
113: mov %ebx,(%rsp) | |
114: mov %edx,0x4(%rsp) | |
115: mov %r9d,0x10(%rsp) | |
116: data16 xchg %ax,%ax | |
117: callq 0x000000010ad896a0 ; OopMap{rbp=Oop off=492} | |
;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
; {runtime_call} | |
118: callq 0x0000000106e8a904 ;*ifge | |
; - nl.martijndwars.simd.Copy::singleByte@20 (line 57) | |
; {runtime_call} | |
119: add $0x2,%ebx | |
120: jmp 112 | |
121: add $0x3,%ebx | |
122: jmp 112 | |
123: add $0x4,%ebx | |
124: jmp 112 | |
125: add $0x5,%ebx | |
126: jmp 112 | |
127: add $0x6,%ebx | |
128: jmp 112 | |
129: add $0x7,%ebx ;*iinc | |
; - nl.martijndwars.simd.Copy::singleByte@32 (line 56) | |
130: jmp 112 ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
131: mov $0xfffffff6,%esi | |
132: data16 xchg %ax,%ax | |
133: callq 0x000000010ad896a0 ; OopMap{off=540} | |
;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
; {runtime_call} | |
134: callq 0x0000000106e8a904 ;*getfield result | |
; - nl.martijndwars.simd.Copy::singleByte@11 (line 57) | |
; {runtime_call} | |
135: mov %ecx,%r9d | |
136: mov $0xffffffe4,%esi | |
137: mov %ebx,0x4(%rsp) | |
138: mov %r9d,0x10(%rsp) | |
139: mov %eax,0x14(%rsp) | |
140: nop | |
141: callq 0x000000010ad896a0 ; OopMap{rbp=Oop [20]=NarrowOop off=572} | |
;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
142: callq 0x0000000106e8a904 ; {runtime_call} | |
143: mov $0xffffff9d,%esi | |
144: mov %ebx,(%rsp) | |
145: xchg %ax,%ax | |
146: callq 0x000000010ad896a0 ; OopMap{rbp=Oop off=592} | |
;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
; {runtime_call} | |
147: callq 0x0000000106e8a904 ;*iload_3 | |
; - nl.martijndwars.simd.Copy::singleByte@2 (line 56) | |
; {runtime_call} | |
148: mov %ecx,%r9d | |
149: jmpq 112 | |
150: mov $0xfffffff6,%esi | |
151: mov %ebx,%ebp | |
152: data16 xchg %ax,%ax | |
153: callq 0x000000010ad896a0 ; OopMap{off=620} | |
;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
154: callq 0x0000000106e8a904 ;*baload | |
; - nl.martijndwars.simd.Copy::singleByte@19 (line 57) | |
; {runtime_call} | |
155: hlt | |
156: hlt | |
157: hlt | |
158: hlt | |
159: hlt | |
160: hlt | |
161: hlt | |
162: hlt | |
163: hlt | |
164: hlt | |
165: hlt | |
166: hlt | |
167: hlt | |
168: hlt | |
169: hlt |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment