Skip to content

Instantly share code, notes, and snippets.

@martijndwars
Created October 30, 2019 10:47
Show Gist options
  • Save martijndwars/e982fc7d71f98a4e50296b707dca442e to your computer and use it in GitHub Desktop.
Save martijndwars/e982fc7d71f98a4e50296b707dca442e to your computer and use it in GitHub Desktop.
Rewrite assembly addresses
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)
}
}
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
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