Thanks for using Compiler Explorer
Sponsors
Jakt
C++
Ada
Analysis
Android Java
Android Kotlin
Assembly
C
C3
Carbon
C++ (Circle)
CIRCT
Clean
CMake
CMakeScript
COBOL
C++ for OpenCL
MLIR
Cppx
Cppx-Blue
Cppx-Gold
Cpp2-cppfront
Crystal
C#
CUDA C++
D
Dart
Elixir
Erlang
Fortran
F#
GLSL
Go
Haskell
HLSL
Hook
Hylo
IL
ispc
Java
Julia
Kotlin
LLVM IR
LLVM MIR
Modula-2
Nim
Objective-C
Objective-C++
OCaml
OpenCL C
Pascal
Pony
Python
Racket
Ruby
Rust
Snowball
Scala
Solidity
Spice
SPIR-V
Swift
LLVM TableGen
Toit
TypeScript Native
V
Vala
Visual Basic
WASM
Zig
Javascript
GIMPLE
Ygen
analysis source #1
Output
Compile to binary object
Link to binary
Execute the code
Intel asm syntax
Demangle identifiers
Verbose demangling
Filters
Unused labels
Library functions
Directives
Comments
Horizontal whitespace
Debug intrinsics
Compiler
OSACA (0.6.1)
llvm-mca (assertions trunk)
llvm-mca (trunk)
Options
Source code
movl %edx, %r9d movq %rsi, %r14 movq %rdi, %r13 cmpl $0, %gs:104 jne .LBB0_1 .LBB0_2: leaq 64(%r13), %r8 movq 64(%r13), %rbx testq %rbx, lvbTrapMask(%rip) jne .LBB0_3 .LBB0_4: testq %rbx, %rbx je .LBB0_28 .LBB0_5: movq %r14, %rdi movl %r9d, %esi movq %rbx, %rdx #noautopadding .p2align 3, 0x90 nopl 8(%rax,%rax) .Ltmp0: #autopadding movq 64(%r13), %rcx testq %rcx, lvbTrapMask(%rip) jne .LBB0_6 .LBB0_7: #noautopadding .Ltmp1: movl 8(%rcx), %r11d # on-fault: .LBB0_38 #autopadding # %bb.8: cmpl $80, %r11d jb .LBB0_27 # %bb.9: movl $15, %eax .p2align 5, 0x90 .LBB0_10: # =>This Inner Loop Header: Depth=1 # BAD - vectorized loop movq -12(%rcx,%rax,4), %rdx xorq 8(%rcx,%rax,4), %rdx xorq -36(%rcx,%rax,4), %rdx xorq -44(%rcx,%rax,4), %rdx vmovq %rdx, %xmm0 vpsrld $31, %xmm0, %xmm1 vpaddd %xmm0, %xmm0, %xmm0 vpor %xmm1, %xmm0, %xmm0 vmovq %xmm0, 20(%rcx,%rax,4) addq $2, %rax cmpq $78, %rax jbe .LBB0_10 # %bb.11: movq 72(%r13), %rax testq %rax, lvbTrapMask(%rip) jne .LBB0_12 .LBB0_13: #noautopadding .Ltmp2: cmpl $4, 8(%rax) # on-fault: .LBB0_37 #autopadding # %bb.14: jbe .LBB0_39 # %bb.15: vmovdqu 16(%rax), %xmm0 movl 32(%rax), %edx leal -20(%r11), %esi cmpl $-20, %esi ja .LBB0_40 # %bb.16: vpextrd $1, %xmm0, %r10d vmovd %xmm0, %r8d vpextrd $2, %xmm0, %edi vpextrd $3, %xmm0, %esi movq $-1, %rbx movl %edx, %r9d .LBB0_17: # =>This Inner Loop Header: Depth=1 rorxl $27, %r8d, %r14d andnl %esi, %r10d, %r15d rorxl $2, %r10d, %ebp andl %edi, %r10d addl %r9d, %r10d addl %r14d, %r15d addl %r10d, %r15d movl 20(%rcx,%rbx,4), %r9d leal (%r9,%r15), %r10d addl $1518500249, %r10d # imm = 0x5A827999 rorxl $27, %r10d, %r14d andnl %edi, %r8d, %r15d rorxl $2, %r8d, %r9d andl %ebp, %r8d movl 24(%rcx,%rbx,4), %r12d addl %esi, %r15d addl %r8d, %r15d addl %r14d, %r15d leal (%r12,%r15), %r8d addl $1518500249, %r8d # imm = 0x5A827999 rorxl $27, %r8d, %r14d andnl %ebp, %r10d, %r15d rorxl $2, %r10d, %esi # kill: def $r10d killed $r10d def $r10 andl %r9d, %r10d movl 28(%rcx,%rbx,4), %r12d addl %edi, %r10d addl %r15d, %r10d addl %r14d, %r10d addl %r12d, %r10d addl $1518500249, %r10d # imm = 0x5A827999 rorxl $27, %r10d, %r14d andnl %r9d, %r8d, %r15d rorxl $2, %r8d, %edi # kill: def $r8d killed $r8d def $r8 andl %esi, %r8d movl 32(%rcx,%rbx,4), %r12d addl %ebp, %r8d addl %r15d, %r8d addl %r14d, %r8d addl %r12d, %r8d addl $1518500249, %r8d # imm = 0x5A827999 addq $4, %rbx cmpq $18, %rbx jbe .LBB0_17 # %bb.18: cmpl $40, %r11d jb .LBB0_41 # %bb.19: movl $19, %ebx .LBB0_20: # =>This Inner Loop Header: Depth=1 rorxl $27, %r8d, %ebp addl %r9d, %ebp movl %edi, %r9d xorl %esi, %r9d xorl %r10d, %r9d addl %ebp, %r9d movl 20(%rcx,%rbx,4), %r14d addl %r9d, %r14d addl $1859775393, %r14d # imm = 0x6ED9EBA1 rorxl $2, %r10d, %ebp rorxl $27, %r14d, %r10d rorxl $2, %r8d, %r9d movl %r9d, %r15d xorl %ebp, %r15d xorl %r14d, %r15d addl %edi, %r15d # kill: def $edi killed $edi def $rdi xorl %r8d, %edi xorl %ebp, %edi movl 24(%rcx,%rbx,4), %r8d addl %esi, %edi addl %r10d, %edi addl %r8d, %edi addl $1859775393, %edi # imm = 0x6ED9EBA1 rorxl $27, %edi, %esi movl 28(%rcx,%rbx,4), %r8d addl %esi, %r15d leal (%r8,%r15), %r10d addl $1859775393, %r10d # imm = 0x6ED9EBA1 rorxl $2, %r14d, %esi rorxl $27, %r10d, %r8d movl %esi, %r14d xorl %r9d, %r14d xorl %edi, %r14d movl 32(%rcx,%rbx,4), %r15d addl %ebp, %r14d addl %r8d, %r14d leal (%r15,%r14), %r8d addl $1859775393, %r8d # imm = 0x6ED9EBA1 rorxl $2, %edi, %edi addq $4, %rbx cmpq $38, %rbx jbe .LBB0_20 # %bb.21: cmpl $60, %r11d jb .LBB0_42 # %bb.22: movl $39, %r11d .LBB0_23: # =>This Inner Loop Header: Depth=1 rorxl $27, %r8d, %ebx addl %r9d, %ebx movl %edi, %r9d orl %esi, %r9d andl %r10d, %r9d movl %edi, %r14d andl %esi, %r14d orl %r9d, %r14d addl %ebx, %r14d movl 20(%rcx,%r11,4), %r9d leal (%r9,%r14), %ebp addl $-1894007588, %ebp # imm = 0x8F1BBCDC rorxl $2, %r10d, %ebx rorxl $27, %ebp, %r9d movl %ebx, %r10d orl %edi, %r10d andl %r8d, %r10d movl %ebx, %r14d andl %edi, %r14d orl %r10d, %r14d movl 24(%rcx,%r11,4), %r10d addl %esi, %r14d addl %r9d, %r14d addl %r10d, %r14d addl $-1894007588, %r14d # imm = 0x8F1BBCDC rorxl $2, %r8d, %r9d rorxl $27, %r14d, %esi movl %r9d, %r8d orl %ebx, %r8d andl %ebp, %r8d movl %r9d, %r10d andl %ebx, %r10d orl %r8d, %r10d movl 28(%rcx,%r11,4), %r8d addl %edi, %r10d addl %esi, %r10d addl %r8d, %r10d addl $-1894007588, %r10d # imm = 0x8F1BBCDC rorxl $2, %ebp, %esi rorxl $27, %r10d, %edi movl %esi, %r8d orl %r9d, %r8d andl %r14d, %r8d movl %esi, %r15d andl %r9d, %r15d orl %r8d, %r15d movl 32(%rcx,%r11,4), %r8d addl %ebx, %r15d addl %edi, %r15d addl %r15d, %r8d addl $-1894007588, %r8d # imm = 0x8F1BBCDC rorxl $2, %r14d, %edi addq $4, %r11 cmpq $59, %r11 jb .LBB0_23 # %bb.24: movl $59, %r11d .LBB0_25: # =>This Inner Loop Header: Depth=1 rorxl $27, %r8d, %ebx addl %r9d, %ebx movl %edi, %r9d xorl %esi, %r9d xorl %r10d, %r9d addl %ebx, %r9d movl 20(%rcx,%r11,4), %ebx leal (%rbx,%r9), %ebp addl $-899497514, %ebp # imm = 0xCA62C1D6 rorxl $2, %r10d, %ebx rorxl $27, %ebp, %r10d rorxl $2, %r8d, %r9d movl %r9d, %r14d xorl %ebx, %r14d xorl %ebp, %r14d addl %edi, %r14d # kill: def $edi killed $edi def $rdi xorl %r8d, %edi xorl %ebx, %edi movl 24(%rcx,%r11,4), %r8d addl %esi, %edi addl %r10d, %edi addl %r8d, %edi addl $-899497514, %edi # imm = 0xCA62C1D6 rorxl $27, %edi, %esi movl 28(%rcx,%r11,4), %r8d addl %esi, %r14d leal (%r8,%r14), %r10d addl $-899497514, %r10d # imm = 0xCA62C1D6 rorxl $2, %ebp, %esi rorxl $27, %r10d, %r8d movl %esi, %r14d xorl %r9d, %r14d xorl %edi, %r14d movl 32(%rcx,%r11,4), %r15d addl %ebx, %r14d addl %r8d, %r14d leal (%r15,%r14), %r8d addl $-899497514, %r8d # imm = 0xCA62C1D6 rorxl $2, %edi, %edi addq $4, %r11 cmpq $78, %r11 jbe .LBB0_25 # %bb.26: vmovd %r8d, %xmm1 vpinsrd $1, %r10d, %xmm1, %xmm1 vpinsrd $2, %edi, %xmm1, %xmm1 vpinsrd $3, %esi, %xmm1, %xmm1 vpaddd %xmm0, %xmm1, %xmm0 vmovdqu %xmm0, 16(%rax) addl %edx, %r9d movl %r9d, 32(%rax) addq $72, %rsp .cfi_def_cfa_offset 56 popq %rbx .cfi_def_cfa_offset 48 popq %r12 .cfi_def_cfa_offset 40 popq %r13 .cfi_def_cfa_offset 32 popq %r14 .cfi_def_cfa_offset 24 popq %r15 .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .LBB0_28: .cfi_def_cfa_offset 128 movq %gs:176, %rbx leaq 336(%rbx), %rax cmpq %gs:192, %rax jae .LBB0_30 # %bb.29: movq %rax, %gs:176 movabsq $42949672960, %rax # imm = 0xA00000000 movq %rax, (%rbx) movq $80, 8(%rbx) .LBB0_31: testq %rbx, %rbx je .LBB0_32 .LBB0_33: #MEMBARRIER movabsq $86973087744, %rax # imm = 0x1440000000 addq %r13, %rax cmpq %rbx, %rax jb .LBB0_34 .LBB0_36: movq %rbx, (%r8) jmp .LBB0_5 .LBB0_30: movl $10, %esi movl $336, %ecx # imm = 0x150 movl $80, %edx xorl %edi, %edi callq "StubRoutines::new_fast_array_orca()"@PLT movq %rax, %rbx jmp .LBB0_31 .LBB0_1: #noautopadding callq "StubRoutines::safepoint_trap_handler()"@PLT .Ltmp3: #autopadding jmp .LBB0_2 .LBB0_3: movq %rbx, %rdi movq %r8, %rsi callq jHeapLvb.TrapFunc@PLT movq %rax, %rbx jmp .LBB0_4 .LBB0_6: leaq 64(%r13), %rsi movq %rcx, %rdi callq jHeapLvb.TrapFunc@PLT movq %rax, %rcx jmp .LBB0_7 .LBB0_12: leaq 72(%r13), %rsi movq %rax, %rdi callq jHeapLvb.TrapFunc@PLT jmp .LBB0_13 .LBB0_34: movq %r8, %rax shrq $14, %rax andq $-128, %rax movabsq $112150186033232, %rcx # imm = 0x660000000050 movq (%rax,%rcx), %rax movq %r8, %rcx subq %rax, %rcx movq %rcx, %rdx shrq $3, %rdx movq %rcx, %rsi shrq $9, %rsi movq (%rax,%rsi,8), %rsi btq %rdx, %rsi jb .LBB0_36 # %bb.35: #APP lock btsq %rdx, (%rax) #NO_APP shrq $14, %rcx movq $1, (%rax,%rcx,8) jmp .LBB0_36 .LBB0_32: movq $0, %gs:1632 movq %rsp, %gs:1624 movq %gs:64, %rdi movl $10, %esi movl $10, %edx movl $80, %ecx movq %r13, 56(%rsp) # 8-byte Spill movq %r14, 64(%rsp) # 8-byte Spill movl %r9d, 52(%rsp) # 4-byte Spill #noautopadding # 20-byte Folded Reload callq "DolphinRuntime::newarray"@PLT .Ltmp4: #autopadding movl 52(%rsp), %r9d # 4-byte Reload movq 64(%rsp), %r14 # 8-byte Reload movq 56(%rsp), %r13 # 8-byte Reload movq %rax, %rbx leaq 64(%r13), %r8 movq $0, %gs:1624 jmp .LBB0_33 .LBB0_38: movl $11, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp5: #autopadding .LBB0_27: movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp6: #autopadding .LBB0_37: movl $11, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp7: #autopadding .LBB0_39: movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp8: #autopadding .LBB0_40: vmovd %xmm0, %eax rorxl $27, %eax, %esi vpextrd $1, %xmm0, %edi vpextrd $2, %xmm0, %r8d movl %r8d, %r9d andl %edi, %r9d addl %esi, %r9d vpextrd $3, %xmm0, %esi andnl %esi, %edi, %r10d addl %edx, %r10d addl %r9d, %r10d movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp9: #autopadding .LBB0_41: rorxl $27, %r8d, %eax movl %r10d, %edx xorl %esi, %edx xorl %edi, %edx addl %r9d, %edx addl %eax, %edx movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp10: #autopadding .LBB0_42: rorxl $27, %r8d, %eax movl %edi, %edx orl %esi, %edx andl %r10d, %edx movl %edi, %ebx andl %esi, %ebx orl %edx, %ebx addl %r9d, %ebx addl %eax, %ebx movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp11: #autopadding .Lfunc_end0: .size "virtual void sun.security.provider.SHA.implCompress0(jobject, jint, jobject)6777458393091", .Lfunc_end0-"virtual void sun.security.provider.SHA.implCompress0(jobject, jint, jobject)6777458393091" .cfi_endproc .section .gcc_except_table,"a",@progbits .p2align 2, 0x0 GCC_except_table0: .Lexception0: .byte 255 # @LPStart Encoding = omit .byte 255 # @TType Encoding = omit .byte 1 # Call site Encoding = uleb128 .uleb128 .Lcst_end0-.Lcst_begin0 .Lcst_begin0: .uleb128 .Lfunc_begin0-.Lfunc_begin0 # >> Call Site 1 << .uleb128 .Lfunc_end0-.Lfunc_begin0 # Call between .Lfunc_begin0 and .Lfunc_end0 .byte 0 # has no landing pad .byte 0 # On action: cleanup
analysis source #2
Output
Compile to binary object
Link to binary
Execute the code
Intel asm syntax
Demangle identifiers
Verbose demangling
Filters
Unused labels
Library functions
Directives
Comments
Horizontal whitespace
Debug intrinsics
Compiler
OSACA (0.6.1)
llvm-mca (assertions trunk)
llvm-mca (trunk)
Options
Source code
# %bb.0: #noautopadding pushq %rbp #autopadding .cfi_def_cfa_offset 16 pushq %r15 .cfi_def_cfa_offset 24 pushq %r14 .cfi_def_cfa_offset 32 pushq %r13 .cfi_def_cfa_offset 40 pushq %r12 .cfi_def_cfa_offset 48 pushq %rbx .cfi_def_cfa_offset 56 subq $88, %rsp .cfi_def_cfa_offset 144 .cfi_offset %rbx, -56 .cfi_offset %r12, -48 .cfi_offset %r13, -40 .cfi_offset %r14, -32 .cfi_offset %r15, -24 .cfi_offset %rbp, -16 movl %edx, %r9d movq %rsi, %r15 movq %rdi, %r14 cmpl $0, %gs:104 jne .LBB0_1 .LBB0_2: leaq 64(%r14), %r8 movq 64(%r14), %rbx testq %rbx, lvbTrapMask(%rip) jne .LBB0_3 .LBB0_4: testq %rbx, %rbx je .LBB0_28 .LBB0_5: movq %r15, %rdi movl %r9d, %esi movq %rbx, %rdx #noautopadding .p2align 3, 0x90 nopl 8(%rax,%rax) .Ltmp0: #autopadding movq 64(%r14), %rcx testq %rcx, lvbTrapMask(%rip) jne .LBB0_6 .LBB0_7: #noautopadding .Ltmp1: movl 8(%rcx), %r15d # on-fault: .LBB0_38 #autopadding # %bb.8: cmpl $80, %r15d jb .LBB0_27 # %bb.9: movl $15, %eax .p2align 5, 0x90 .LBB0_10: # =>This Inner Loop Header: Depth=1 # GOOD - scalar loop movl 8(%rcx,%rax,4), %edx xorl -12(%rcx,%rax,4), %edx movl -44(%rcx,%rax,4), %esi xorl -36(%rcx,%rax,4), %esi xorl %edx, %esi rorxl $31, %esi, %edx movl %edx, 20(%rcx,%rax,4) movl 12(%rcx,%rax,4), %edx xorl -8(%rcx,%rax,4), %edx movl -40(%rcx,%rax,4), %esi xorl -32(%rcx,%rax,4), %esi xorl %edx, %esi rorxl $31, %esi, %edx movl %edx, 24(%rcx,%rax,4) addq $2, %rax cmpq $78, %rax jbe .LBB0_10 # %bb.11: movq 72(%r14), %rax testq %rax, lvbTrapMask(%rip) jne .LBB0_12 .LBB0_13: #noautopadding .Ltmp2: cmpl $4, 8(%rax) # on-fault: .LBB0_37 #autopadding # %bb.14: jbe .LBB0_39 # %bb.15: movq %r14, 56(%rsp) # 8-byte Spill movl 16(%rax), %r9d movl 20(%rax), %r14d movl 24(%rax), %ebx movl 28(%rax), %r10d movl 32(%rax), %r8d leal -20(%r15), %edx cmpl $-20, %edx ja .LBB0_40 # %bb.16: movq $-1, %r12 movl %r8d, %r11d movl %r10d, 72(%rsp) # 4-byte Spill movl %ebx, 68(%rsp) # 4-byte Spill movl %r14d, 84(%rsp) # 4-byte Spill movl %r9d, %ebp .LBB0_17: # =>This Inner Loop Header: Depth=1 rorxl $27, %ebp, %edx andnl %r10d, %r14d, %esi rorxl $2, %r14d, %r13d andl %ebx, %r14d addl %r11d, %r14d addl %edx, %esi addl %r14d, %esi movl 20(%rcx,%r12,4), %edx addl %esi, %edx addl $1518500249, %edx # imm = 0x5A827999 rorxl $27, %edx, %esi andnl %ebx, %ebp, %r14d rorxl $2, %ebp, %r11d andl %r13d, %ebp movl 24(%rcx,%r12,4), %edi addl %r10d, %r14d addl %ebp, %r14d addl %esi, %r14d leal (%rdi,%r14), %esi addl $1518500249, %esi # imm = 0x5A827999 rorxl $27, %esi, %edi andnl %r13d, %edx, %ebp rorxl $2, %edx, %r10d # kill: def $edx killed $edx def $rdx andl %r11d, %edx movl 28(%rcx,%r12,4), %r14d addl %ebx, %edx addl %ebp, %edx addl %edi, %edx addl %edx, %r14d addl $1518500249, %r14d # imm = 0x5A827999 rorxl $27, %r14d, %edx andnl %r11d, %esi, %edi rorxl $2, %esi, %ebx # kill: def $esi killed $esi def $rsi andl %r10d, %esi movl 32(%rcx,%r12,4), %ebp addl %r13d, %esi addl %edi, %esi addl %edx, %esi addl %esi, %ebp addl $1518500249, %ebp # imm = 0x5A827999 addq $4, %r12 cmpq $18, %r12 jbe .LBB0_17 # %bb.18: cmpl $40, %r15d jb .LBB0_41 # %bb.19: movl $19, %r12d .LBB0_20: # =>This Inner Loop Header: Depth=1 rorxl $27, %ebp, %edx addl %r11d, %edx movl %ebx, %r11d xorl %r10d, %r11d xorl %r14d, %r11d addl %edx, %r11d movl 20(%rcx,%r12,4), %edx leal (%rdx,%r11), %r13d addl $1859775393, %r13d # imm = 0x6ED9EBA1 rorxl $2, %r14d, %edx rorxl $27, %r13d, %r14d rorxl $2, %ebp, %r11d movl %r11d, %esi xorl %edx, %esi xorl %r13d, %esi addl %ebx, %esi # kill: def $ebx killed $ebx def $rbx xorl %ebp, %ebx xorl %edx, %ebx movl 24(%rcx,%r12,4), %ebp addl %r10d, %ebx addl %r14d, %ebx addl %ebp, %ebx addl $1859775393, %ebx # imm = 0x6ED9EBA1 rorxl $27, %ebx, %r10d movl 28(%rcx,%r12,4), %r14d addl %r10d, %esi addl %esi, %r14d addl $1859775393, %r14d # imm = 0x6ED9EBA1 rorxl $2, %r13d, %r10d rorxl $27, %r14d, %esi movl %r10d, %r13d xorl %r11d, %r13d xorl %ebx, %r13d movl 32(%rcx,%r12,4), %ebp addl %edx, %r13d addl %esi, %r13d addl %r13d, %ebp addl $1859775393, %ebp # imm = 0x6ED9EBA1 rorxl $2, %ebx, %ebx addq $4, %r12 cmpq $38, %r12 jbe .LBB0_20 # %bb.21: cmpl $60, %r15d jb .LBB0_42 # %bb.22: movl $39, %r15d .LBB0_23: # =>This Inner Loop Header: Depth=1 rorxl $27, %ebp, %edx addl %r11d, %edx movl %ebx, %r11d orl %r10d, %r11d andl %r14d, %r11d movl %ebx, %r12d andl %r10d, %r12d orl %r11d, %r12d addl %edx, %r12d movl 20(%rcx,%r15,4), %edx leal (%rdx,%r12), %r13d addl $-1894007588, %r13d # imm = 0x8F1BBCDC rorxl $2, %r14d, %r12d rorxl $27, %r13d, %edx movl %r12d, %r11d orl %ebx, %r11d andl %ebp, %r11d movl %r12d, %r14d andl %ebx, %r14d orl %r11d, %r14d movl 24(%rcx,%r15,4), %r11d addl %r10d, %r14d addl %edx, %r14d leal (%r11,%r14), %edx addl $-1894007588, %edx # imm = 0x8F1BBCDC rorxl $2, %ebp, %r11d rorxl $27, %edx, %r10d movl %r11d, %ebp orl %r12d, %ebp andl %r13d, %ebp movl %r11d, %r14d andl %r12d, %r14d orl %ebp, %r14d movl 28(%rcx,%r15,4), %ebp addl %ebx, %r14d addl %r10d, %r14d addl %ebp, %r14d addl $-1894007588, %r14d # imm = 0x8F1BBCDC rorxl $2, %r13d, %r10d rorxl $27, %r14d, %ebx movl %r10d, %ebp orl %r11d, %ebp andl %edx, %ebp movl %r10d, %r13d andl %r11d, %r13d orl %ebp, %r13d movl 32(%rcx,%r15,4), %ebp addl %r12d, %r13d addl %ebx, %r13d addl %r13d, %ebp addl $-1894007588, %ebp # imm = 0x8F1BBCDC rorxl $2, %edx, %ebx addq $4, %r15 cmpq $59, %r15 jb .LBB0_23 # %bb.24: movl $59, %r15d .LBB0_25: # =>This Inner Loop Header: Depth=1 rorxl $27, %ebp, %edx addl %r11d, %edx movl %ebx, %r11d xorl %r10d, %r11d xorl %r14d, %r11d addl %edx, %r11d movl 20(%rcx,%r15,4), %edx leal (%rdx,%r11), %r12d addl $-899497514, %r12d # imm = 0xCA62C1D6 rorxl $2, %r14d, %edx rorxl $27, %r12d, %r14d rorxl $2, %ebp, %r11d movl %r11d, %r13d xorl %edx, %r13d xorl %r12d, %r13d addl %ebx, %r13d # kill: def $ebx killed $ebx def $rbx xorl %ebp, %ebx xorl %edx, %ebx movl 24(%rcx,%r15,4), %ebp addl %r10d, %ebx addl %r14d, %ebx addl %ebp, %ebx addl $-899497514, %ebx # imm = 0xCA62C1D6 rorxl $27, %ebx, %r10d movl 28(%rcx,%r15,4), %r14d addl %r10d, %r13d addl %r13d, %r14d addl $-899497514, %r14d # imm = 0xCA62C1D6 rorxl $2, %r12d, %r10d rorxl $27, %r14d, %ebp movl %r10d, %r12d xorl %r11d, %r12d xorl %ebx, %r12d movl 32(%rcx,%r15,4), %r13d addl %edx, %r12d addl %ebp, %r12d leal (%r12,%r13), %ebp addl $-899497514, %ebp # imm = 0xCA62C1D6 rorxl $2, %ebx, %ebx addq $4, %r15 cmpq $78, %r15 jbe .LBB0_25 # %bb.26: addl %r9d, %ebp movl %ebp, 16(%rax) addl 84(%rsp), %r14d # 4-byte Folded Reload movl %r14d, 20(%rax) addl 68(%rsp), %ebx # 4-byte Folded Reload movl %ebx, 24(%rax) addl 72(%rsp), %r10d # 4-byte Folded Reload movl %r10d, 28(%rax) addl %r8d, %r11d movl %r11d, 32(%rax) addq $88, %rsp .cfi_def_cfa_offset 56 popq %rbx .cfi_def_cfa_offset 48 popq %r12 .cfi_def_cfa_offset 40 popq %r13 .cfi_def_cfa_offset 32 popq %r14 .cfi_def_cfa_offset 24 popq %r15 .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .LBB0_28: .cfi_def_cfa_offset 144 movq %gs:176, %rbx leaq 336(%rbx), %rax cmpq %gs:192, %rax jae .LBB0_30 # %bb.29: movq %rax, %gs:176 movabsq $42949672960, %rax # imm = 0xA00000000 movq %rax, (%rbx) movq $80, 8(%rbx) .LBB0_31: testq %rbx, %rbx je .LBB0_32 .LBB0_33: #MEMBARRIER movabsq $86973087744, %rax # imm = 0x1440000000 addq %r14, %rax cmpq %rbx, %rax jb .LBB0_34 .LBB0_36: movq %rbx, (%r8) jmp .LBB0_5 .LBB0_30: movl $10, %esi movl $336, %ecx # imm = 0x150 movl $80, %edx xorl %edi, %edi callq "StubRoutines::new_fast_array_orca()"@PLT movq %rax, %rbx jmp .LBB0_31 .LBB0_1: #noautopadding callq "StubRoutines::safepoint_trap_handler()"@PLT .Ltmp3: #autopadding jmp .LBB0_2 .LBB0_3: movq %rbx, %rdi movq %r8, %rsi callq jHeapLvb.TrapFunc@PLT movq %rax, %rbx jmp .LBB0_4 .LBB0_6: leaq 64(%r14), %rsi movq %rcx, %rdi callq jHeapLvb.TrapFunc@PLT movq %rax, %rcx jmp .LBB0_7 .LBB0_12: leaq 72(%r14), %rsi movq %rax, %rdi callq jHeapLvb.TrapFunc@PLT jmp .LBB0_13 .LBB0_34: movq %r8, %rax shrq $14, %rax andq $-128, %rax movabsq $112150186033232, %rcx # imm = 0x660000000050 movq (%rax,%rcx), %rax movq %r8, %rcx subq %rax, %rcx movq %rcx, %rdx shrq $3, %rdx movq %rcx, %rsi shrq $9, %rsi movq (%rax,%rsi,8), %rsi btq %rdx, %rsi jb .LBB0_36 # %bb.35: #APP lock btsq %rdx, (%rax) #NO_APP shrq $14, %rcx movq $1, (%rax,%rcx,8) jmp .LBB0_36 .LBB0_32: movq $0, %gs:1632 movq %rsp, %gs:1624 movq %gs:64, %rdi movl $10, %esi movl $10, %edx movl $80, %ecx movq %r14, 56(%rsp) # 8-byte Spill movq %r15, 72(%rsp) # 8-byte Spill movl %r9d, 68(%rsp) # 4-byte Spill #noautopadding # 20-byte Folded Reload callq "DolphinRuntime::newarray"@PLT .Ltmp4: #autopadding movl 68(%rsp), %r9d # 4-byte Reload movq 72(%rsp), %r15 # 8-byte Reload movq 56(%rsp), %r14 # 8-byte Reload movq %rax, %rbx leaq 64(%r14), %r8 movq $0, %gs:1624 jmp .LBB0_33 .LBB0_38: movl $11, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp5: #autopadding .LBB0_27: movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp6: #autopadding .LBB0_37: movl $11, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp7: #autopadding .LBB0_39: movl $13, %r11d #noautopadding callq __llvm_deoptimize@PLT .Ltmp8: #autopadding .LBB0_40: rorxl $27, %r9d, %eax movl %ebx, %edx andl %r14d, %edx addl %eax, %edx andnl %r10d, %r14d, %eax addl %r8d, %eax addl %edx, %eax movl $13, %r11d #noautopadding # 8-byte Folded Reload callq __llvm_deoptimize@PLT .Ltmp9: #autopadding .LBB0_41: rorxl $27, %ebp, %eax movl %r14d, %edx xorl %r10d, %edx xorl %ebx, %edx addl %r11d, %edx addl %eax, %edx movl $13, %r11d #noautopadding # 8-byte Folded Reload callq __llvm_deoptimize@PLT .Ltmp10: #autopadding .LBB0_42: rorxl $27, %ebp, %eax movl %ebx, %edx orl %r10d, %edx andl %r14d, %edx movl %ebx, %esi andl %r10d, %esi orl %edx, %esi addl %r11d, %esi addl %eax, %esi movl $13, %r11d #noautopadding # 8-byte Folded Reload callq __llvm_deoptimize@PLT .Ltmp11: #autopadding .Lfunc_end0: .size "virtual void sun.security.provider.SHA.implCompress0(jobject, jint, jobject)6777458393091", .Lfunc_end0-"virtual void sun.security.provider.SHA.implCompress0(jobject, jint, jobject)6777458393091" .cfi_endproc .section .gcc_except_table,"a",@progbits .p2align 2, 0x0 GCC_except_table0: .Lexception0: .byte 255 # @LPStart Encoding = omit .byte 255 # @TType Encoding = omit .byte 1 # Call site Encoding = uleb128 .uleb128 .Lcst_end0-.Lcst_begin0 .Lcst_begin0: .uleb128 .Lfunc_begin0-.Lfunc_begin0 # >> Call Site 1 << .uleb128 .Lfunc_end0-.Lfunc_begin0 # Call between .Lfunc_begin0 and .Lfunc_end0 .byte 0 # has no landing pad .byte 0 # On action: cleanup
Become a Patron
Sponsor on GitHub
Donate via PayPal
Source on GitHub
Mailing list
Installed libraries
Wiki
Report an issue
How it works
Contact the author
CE on Mastodon
About the author
Statistics
Changelog
Version tree