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
llvm 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
clang (assertions trunk)
clang (trunk)
clang 10.0.0
clang 10.0.1
clang 11.0.0
clang 11.0.1
clang 12.0.0
clang 12.0.1
clang 13.0.0
clang 14.0.0
clang 15.0.0
clang 16.0.0
clang 17.0.1
clang 18.1.0
clang 19.1.0
clang 4.0.1
clang 5.0.0
clang 6.0.0
clang 7.0.0
clang 8.0.0
clang 9.0.0
llc (assertions trunk)
llc (trunk)
llc 10.0.0
llc 10.0.1
llc 11.0.0
llc 11.0.1
llc 12.0.0
llc 12.0.1
llc 13.0.0
llc 14.0.0
llc 15.0.0
llc 16.0.0
llc 17.0.1
llc 18.1.0
llc 19.1.0
llc 3.2
llc 3.3
llc 3.9.1
llc 4.0.0
llc 4.0.1
llc 5.0.0
llc 6.0.0
llc 7.0.0
llc 8.0.0
llc 9.0.0
opt (assertions trunk)
opt (trunk)
opt 10.0.0
opt 10.0.1
opt 11.0.0
opt 11.0.1
opt 12.0.0
opt 12.0.1
opt 13.0.0
opt 14.0.0
opt 15.0.0
opt 16.0.0
opt 17.0.1
opt 18.1.0
opt 19.1.0
opt 3.2
opt 3.3
opt 3.9.1
opt 4.0.0
opt 4.0.1
opt 5.0.0
opt 6.0.0
opt 7.0.0
opt 8.0.0
opt 9.0.0
Options
Source code
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128-ni:1-p2:32:8:8:32-ni:2" target triple = "x86_64-unknown-linux-gnu" declare void @llvm.experimental.deoptimize.isVoid(...) ; Function Attrs: uwtable define void @f.38(ptr addrspace(1) noundef nonnull align 8 dereferenceable_or_null(80) %0, ptr addrspace(1) noundef align 8 dereferenceable_or_null(16) %1, i32 noundef %2, ptr addrspace(1) noundef align 8 dereferenceable_or_null(16) %3) #0 gc "statepoint-example" personality ptr @f.39 !prof !11 { %load = load i64, ptr addrspace(256) inttoptr (i64 64 to ptr addrspace(256)), align 64, !invariant.load !3 %getelementptr = getelementptr inbounds i8, ptr addrspace(1) %0, i64 64 ;%load1 = load ptr addrspace(1), ptr addrspace(1) %getelementptr, align 8, !tbaa !12, !dereferenceable_or_null !19, !align !20, !noundef !3 %load1 = load ptr addrspace(1), ptr addrspace(1) %getelementptr, align 8, !dereferenceable_or_null !19, !align !20, !noundef !3 %icmp = icmp eq ptr addrspace(1) %load1, null br i1 %icmp, label %10, label %5, !prof !21 5: ; preds = %bb19, %4 %phi = phi ptr addrspace(1) [ %phi329, %bb19 ], [ %load1, %4 ] %load2 = load ptr addrspace(1), ptr addrspace(1) %getelementptr, align 8, !dereferenceable_or_null !19, !align !20, !noundef !3 %icmp3 = icmp eq ptr addrspace(1) %load2, null %getelementptr4 = getelementptr inbounds i8, ptr addrspace(1) %load2, i64 16 br i1 %icmp3, label %bb, label %bb1, !prof !22, !make.implicit !3 bb: ; preds = %5 call void (...) @llvm.experimental.deoptimize.isVoid(i32 11) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 43, i32 2, i32 11, i32 0, i32 0, ptr addrspace(1) null, i32 3, i32 13, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 16, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null) ] ret void bb1: ; preds = %5 %getelementptr5 = getelementptr inbounds i8, ptr addrspace(1) %load2, i64 8 %load6 = load i32, ptr addrspace(1) %getelementptr5, align 8, !range !23, !invariant.load !3, !noundef !3 %icmp7 = icmp ugt i32 %load6, 79 br i1 %icmp7, label %bb2, label %bb18 bb2: ; preds = %bb1 br label %vectorized_slp_bb 6: ; preds = %vectorized_slp_bb %getelementptr8 = getelementptr inbounds i8, ptr addrspace(1) %0, i64 72 %load9 = load ptr addrspace(1), ptr addrspace(1) %getelementptr8, align 8, !tbaa !24, !dereferenceable_or_null !19, !align !20, !noundef !3 %icmp10 = icmp eq ptr addrspace(1) %load9, null br i1 %icmp10, label %12, label %7, !prof !22, !make.implicit !3 7: ; preds = %6 %getelementptr11 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 8 %load12 = load i32, ptr addrspace(1) %getelementptr11, align 8, !tbaa !25, !range !23, !invariant.load !3, !noundef !3 %icmp13 = icmp ugt i32 %load12, 4 br i1 %icmp13, label %bb3, label %8, !prof !27 8: ; preds = %7 call void (...) @llvm.experimental.deoptimize.isVoid(i32 13) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 107, i32 2, i32 11, i32 0, i32 0, ptr addrspace(1) %load9, i32 3, i32 0, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 80, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null) ] ret void bb3: ; preds = %7 %getelementptr14 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 16 %load15 = load i32, ptr addrspace(1) %getelementptr14, align 8, !tbaa !28, !noundef !3 %getelementptr16 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 20 %load17 = load i32, ptr addrspace(1) %getelementptr16, align 4, !tbaa !28, !noundef !3 %getelementptr18 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 24 %load19 = load i32, ptr addrspace(1) %getelementptr18, align 8, !tbaa !28, !noundef !3 %getelementptr20 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 28 %load21 = load i32, ptr addrspace(1) %getelementptr20, align 4, !tbaa !28, !noundef !3 %getelementptr22 = getelementptr inbounds i8, ptr addrspace(1) %load9, i64 32 %load23 = load i32, ptr addrspace(1) %getelementptr22, align 8, !tbaa !28, !noundef !3 %add = add nsw i32 %load6, -20 %icmp24 = icmp ult i32 %add, -19 br i1 %icmp24, label %bb4, label %bb5 bb4: ; preds = %bb3 br label %bb16 bb5: ; preds = %bb3 %call = call i32 @llvm.fshl.i32(i32 %load15, i32 %load15, i32 5) #5 %and = and i32 %load19, %load17 %xor = xor i32 %load17, -1 %and25 = and i32 %load21, %xor %add26 = add i32 %and, %call %add27 = add i32 %add26, %and25 %add28 = add i32 %add27, %load23 call void (...) @llvm.experimental.deoptimize.isVoid(i32 13) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 185, i32 3, i32 11, i32 0, i32 3, i32 %add28, i32 0, ptr addrspace(1) %load2, i32 3, i32 0, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 %load15, i32 3, i32 %load17, i32 3, i32 %load19, i32 3, i32 %load21, i32 3, i32 %load23, i32 3, i32 0, i32 7, ptr null) ] ret void bb6: ; preds = %bb16 %phi29 = phi i32 [ %call258, %bb16 ] %phi30 = phi i32 [ %call271, %bb16 ] %phi31 = phi i32 [ %add270, %bb16 ] %phi32 = phi i32 [ %add283, %bb16 ] %phi33 = phi i32 [ %call284, %bb16 ] %icmp34 = icmp ugt i32 %load6, 39 br i1 %icmp34, label %bb7, label %bb8 bb7: ; preds = %bb6 br label %bb15 bb8: ; preds = %bb6 %call35 = call i32 @llvm.fshl.i32(i32 %phi32, i32 %phi32, i32 5) #5 %xor36 = xor i32 %phi31, %phi30 %xor37 = xor i32 %xor36, %phi33 %add38 = add i32 %xor37, %phi29 %add39 = add i32 %add38, %call35 call void (...) @llvm.experimental.deoptimize.isVoid(i32 13) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 265, i32 3, i32 11, i32 0, i32 3, i32 %add39, i32 0, ptr addrspace(1) %load2, i32 3, i32 20, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 %phi32, i32 3, i32 %phi31, i32 3, i32 %phi33, i32 3, i32 %phi30, i32 3, i32 %phi29, i32 3, i32 20, i32 7, ptr null) ] ret void bb9: ; preds = %bb15 %phi40 = phi i32 [ %call203, %bb15 ] %phi41 = phi i32 [ %call214, %bb15 ] %phi42 = phi i32 [ %add213, %bb15 ] %phi43 = phi i32 [ %add224, %bb15 ] %phi44 = phi i32 [ %call225, %bb15 ] %icmp45 = icmp ugt i32 %load6, 59 br i1 %icmp45, label %bb10, label %bb11 bb10: ; preds = %bb9 br label %bb13 bb11: ; preds = %bb9 %call46 = call i32 @llvm.fshl.i32(i32 %phi43, i32 %phi43, i32 5) #5 %or = or i32 %phi44, %phi41 %and47 = and i32 %or, %phi42 %and48 = and i32 %phi44, %phi41 %or49 = or i32 %and47, %and48 %add50 = add i32 %or49, %phi40 %add51 = add i32 %add50, %call46 call void (...) @llvm.experimental.deoptimize.isVoid(i32 13) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 354, i32 3, i32 11, i32 0, i32 3, i32 %add51, i32 0, ptr addrspace(1) %load2, i32 3, i32 40, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 %phi43, i32 3, i32 %phi42, i32 3, i32 %phi44, i32 3, i32 %phi41, i32 3, i32 %phi40, i32 3, i32 40, i32 7, ptr null) ] ret void 9: ; preds = %bb12 %phi52 = phi i32 [ %call88, %bb12 ] %phi53 = phi i32 [ %call99, %bb12 ] %phi54 = phi i32 [ %add98, %bb12 ] %phi55 = phi i32 [ %add109, %bb12 ] %phi56 = phi i32 [ %call110, %bb12 ] %add57 = add i32 %phi55, %load15 store i32 %add57, ptr addrspace(1) %getelementptr14, align 8, !tbaa !28 %add58 = add i32 %phi54, %load17 store i32 %add58, ptr addrspace(1) %getelementptr16, align 4, !tbaa !28 %add59 = add i32 %phi56, %load19 store i32 %add59, ptr addrspace(1) %getelementptr18, align 8, !tbaa !28 %add60 = add i32 %phi53, %load21 store i32 %add60, ptr addrspace(1) %getelementptr20, align 4, !tbaa !28 %add61 = add i32 %phi52, %load23 store i32 %add61, ptr addrspace(1) %getelementptr22, align 8, !tbaa !28 ret void bb12: ; preds = %bb14, %bb12 %phi62 = phi i64 [ %add111, %bb12 ], [ 60, %bb14 ] %phi63 = phi i32 [ %call88, %bb12 ], [ %phi172, %bb14 ] %phi64 = phi i32 [ %call99, %bb12 ], [ %phi174, %bb14 ] %phi65 = phi i32 [ %call110, %bb12 ], [ %phi176, %bb14 ] %phi66 = phi i32 [ %add98, %bb12 ], [ %phi173, %bb14 ] %phi67 = phi i32 [ %add109, %bb12 ], [ %phi175, %bb14 ] %call68 = call i32 @llvm.fshl.i32(i32 %phi67, i32 %phi67, i32 5) #5 %xor69 = xor i32 %phi65, %phi64 %xor70 = xor i32 %xor69, %phi66 %getelementptr71 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %phi62 %load72 = load i32, ptr addrspace(1) %getelementptr71, align 4, !tbaa !28, !noundef !3 %add73 = add i32 %phi63, -899497514 %add74 = add i32 %add73, %call68 %add75 = add i32 %add74, %xor70 %add76 = add i32 %add75, %load72 %call77 = call i32 @llvm.fshl.i32(i32 %phi66, i32 %phi66, i32 30) #5 %add78 = add nuw nsw i64 %phi62, 1 %call79 = call i32 @llvm.fshl.i32(i32 %add76, i32 %add76, i32 5) #5 %xor80 = xor i32 %call77, %phi65 %xor81 = xor i32 %xor80, %phi67 %getelementptr82 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add78 %load83 = load i32, ptr addrspace(1) %getelementptr82, align 4, !tbaa !28, !noundef !3 %add84 = add i32 %phi64, -899497514 %add85 = add i32 %add84, %call79 %add86 = add i32 %add85, %xor81 %add87 = add i32 %add86, %load83 %call88 = call i32 @llvm.fshl.i32(i32 %phi67, i32 %phi67, i32 30) #5 %add89 = add nuw nsw i64 %phi62, 2 %call90 = call i32 @llvm.fshl.i32(i32 %add87, i32 %add87, i32 5) #5 %xor91 = xor i32 %call88, %call77 %xor92 = xor i32 %xor91, %add76 %getelementptr93 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add89 %load94 = load i32, ptr addrspace(1) %getelementptr93, align 4, !tbaa !28, !noundef !3 %add95 = add i32 %phi65, -899497514 %add96 = add i32 %add95, %call90 %add97 = add i32 %add96, %xor92 %add98 = add i32 %add97, %load94 %call99 = call i32 @llvm.fshl.i32(i32 %add76, i32 %add76, i32 30) #5 %add100 = add nuw nsw i64 %phi62, 3 %call101 = call i32 @llvm.fshl.i32(i32 %add98, i32 %add98, i32 5) #5 %xor102 = xor i32 %call99, %call88 %xor103 = xor i32 %xor102, %add87 %getelementptr104 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add100 %load105 = load i32, ptr addrspace(1) %getelementptr104, align 4, !tbaa !28, !noundef !3 %add106 = add i32 %call77, -899497514 %add107 = add i32 %add106, %call101 %add108 = add i32 %add107, %xor103 %add109 = add i32 %add108, %load105 %call110 = call i32 @llvm.fshl.i32(i32 %add87, i32 %add87, i32 30) #5 %add111 = add nuw nsw i64 %phi62, 4 %icmp112 = icmp ugt i64 %add100, 78 br i1 %icmp112, label %9, label %bb12, !prof !30 bb13: ; preds = %bb13, %bb10 %phi113 = phi i64 [ %add170, %bb13 ], [ 40, %bb10 ] %phi114 = phi i32 [ %call143, %bb13 ], [ %phi40, %bb10 ] %phi115 = phi i32 [ %call156, %bb13 ], [ %phi41, %bb10 ] %phi116 = phi i32 [ %call169, %bb13 ], [ %phi44, %bb10 ] %phi117 = phi i32 [ %add155, %bb13 ], [ %phi42, %bb10 ] %phi118 = phi i32 [ %add168, %bb13 ], [ %phi43, %bb10 ] %call119 = call i32 @llvm.fshl.i32(i32 %phi118, i32 %phi118, i32 5) #5 %or120 = or i32 %phi116, %phi115 %and121 = and i32 %or120, %phi117 %and122 = and i32 %phi116, %phi115 %or123 = or i32 %and121, %and122 %getelementptr124 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %phi113 %load125 = load i32, ptr addrspace(1) %getelementptr124, align 4, !tbaa !28, !noundef !3 %add126 = add i32 %phi114, -1894007588 %add127 = add i32 %add126, %call119 %add128 = add i32 %add127, %or123 %add129 = add i32 %add128, %load125 %call130 = call i32 @llvm.fshl.i32(i32 %phi117, i32 %phi117, i32 30) #5 %add131 = add nuw nsw i64 %phi113, 1 %call132 = call i32 @llvm.fshl.i32(i32 %add129, i32 %add129, i32 5) #5 %or133 = or i32 %call130, %phi116 %and134 = and i32 %or133, %phi118 %and135 = and i32 %call130, %phi116 %or136 = or i32 %and134, %and135 %getelementptr137 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add131 %load138 = load i32, ptr addrspace(1) %getelementptr137, align 4, !tbaa !28, !noundef !3 %add139 = add i32 %phi115, -1894007588 %add140 = add i32 %add139, %call132 %add141 = add i32 %add140, %or136 %add142 = add i32 %add141, %load138 %call143 = call i32 @llvm.fshl.i32(i32 %phi118, i32 %phi118, i32 30) #5 %add144 = add nuw nsw i64 %phi113, 2 %call145 = call i32 @llvm.fshl.i32(i32 %add142, i32 %add142, i32 5) #5 %or146 = or i32 %call143, %call130 %and147 = and i32 %or146, %add129 %and148 = and i32 %call143, %call130 %or149 = or i32 %and147, %and148 %getelementptr150 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add144 %load151 = load i32, ptr addrspace(1) %getelementptr150, align 4, !tbaa !28, !noundef !3 %add152 = add i32 %phi116, -1894007588 %add153 = add i32 %add152, %call145 %add154 = add i32 %add153, %or149 %add155 = add i32 %add154, %load151 %call156 = call i32 @llvm.fshl.i32(i32 %add129, i32 %add129, i32 30) #5 %add157 = add nuw nsw i64 %phi113, 3 %call158 = call i32 @llvm.fshl.i32(i32 %add155, i32 %add155, i32 5) #5 %or159 = or i32 %call156, %call143 %and160 = and i32 %or159, %add142 %and161 = and i32 %call156, %call143 %or162 = or i32 %and160, %and161 %getelementptr163 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add157 %load164 = load i32, ptr addrspace(1) %getelementptr163, align 4, !tbaa !28, !noundef !3 %add165 = add i32 %call130, -1894007588 %add166 = add i32 %add165, %call158 %add167 = add i32 %add166, %or162 %add168 = add i32 %add167, %load164 %call169 = call i32 @llvm.fshl.i32(i32 %add142, i32 %add142, i32 30) #5 %add170 = add nuw nsw i64 %phi113, 4 %icmp171 = icmp ugt i64 %add157, 58 br i1 %icmp171, label %bb14, label %bb13, !prof !30 bb14: ; preds = %bb13 %phi172 = phi i32 [ %call143, %bb13 ] %phi173 = phi i32 [ %add155, %bb13 ] %phi174 = phi i32 [ %call156, %bb13 ] %phi175 = phi i32 [ %add168, %bb13 ] %phi176 = phi i32 [ %call169, %bb13 ] br label %bb12 bb15: ; preds = %bb15, %bb7 %phi177 = phi i64 [ %add226, %bb15 ], [ 20, %bb7 ] %phi178 = phi i32 [ %call203, %bb15 ], [ %phi29, %bb7 ] %phi179 = phi i32 [ %call214, %bb15 ], [ %phi30, %bb7 ] %phi180 = phi i32 [ %call225, %bb15 ], [ %phi33, %bb7 ] %phi181 = phi i32 [ %add213, %bb15 ], [ %phi31, %bb7 ] %phi182 = phi i32 [ %add224, %bb15 ], [ %phi32, %bb7 ] %call183 = call i32 @llvm.fshl.i32(i32 %phi182, i32 %phi182, i32 5) #5 %xor184 = xor i32 %phi180, %phi179 %xor185 = xor i32 %xor184, %phi181 %getelementptr186 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %phi177 %load187 = load i32, ptr addrspace(1) %getelementptr186, align 4, !tbaa !28, !noundef !3 %add188 = add i32 %phi178, 1859775393 %add189 = add i32 %add188, %call183 %add190 = add i32 %add189, %xor185 %add191 = add i32 %add190, %load187 %call192 = call i32 @llvm.fshl.i32(i32 %phi181, i32 %phi181, i32 30) #5 %add193 = add nuw nsw i64 %phi177, 1 %call194 = call i32 @llvm.fshl.i32(i32 %add191, i32 %add191, i32 5) #5 %xor195 = xor i32 %call192, %phi180 %xor196 = xor i32 %xor195, %phi182 %getelementptr197 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add193 %load198 = load i32, ptr addrspace(1) %getelementptr197, align 4, !tbaa !28, !noundef !3 %add199 = add i32 %phi179, 1859775393 %add200 = add i32 %add199, %call194 %add201 = add i32 %add200, %xor196 %add202 = add i32 %add201, %load198 %call203 = call i32 @llvm.fshl.i32(i32 %phi182, i32 %phi182, i32 30) #5 %add204 = add nuw nsw i64 %phi177, 2 %call205 = call i32 @llvm.fshl.i32(i32 %add202, i32 %add202, i32 5) #5 %xor206 = xor i32 %call203, %call192 %xor207 = xor i32 %xor206, %add191 %getelementptr208 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add204 %load209 = load i32, ptr addrspace(1) %getelementptr208, align 4, !tbaa !28, !noundef !3 %add210 = add i32 %phi180, 1859775393 %add211 = add i32 %add210, %call205 %add212 = add i32 %add211, %xor207 %add213 = add i32 %add212, %load209 %call214 = call i32 @llvm.fshl.i32(i32 %add191, i32 %add191, i32 30) #5 %add215 = add nuw nsw i64 %phi177, 3 %call216 = call i32 @llvm.fshl.i32(i32 %add213, i32 %add213, i32 5) #5 %xor217 = xor i32 %call214, %call203 %xor218 = xor i32 %xor217, %add202 %getelementptr219 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add215 %load220 = load i32, ptr addrspace(1) %getelementptr219, align 4, !tbaa !28, !noundef !3 %add221 = add i32 %call192, 1859775393 %add222 = add i32 %add221, %call216 %add223 = add i32 %add222, %xor218 %add224 = add i32 %add223, %load220 %call225 = call i32 @llvm.fshl.i32(i32 %add202, i32 %add202, i32 30) #5 %add226 = add nuw nsw i64 %phi177, 4 %icmp227 = icmp ugt i64 %add215, 38 br i1 %icmp227, label %bb9, label %bb15, !prof !30 bb16: ; preds = %bb16, %bb4 %phi228 = phi i64 [ %add285, %bb16 ], [ 0, %bb4 ] %phi229 = phi i32 [ %call258, %bb16 ], [ %load23, %bb4 ] %phi230 = phi i32 [ %call271, %bb16 ], [ %load21, %bb4 ] %phi231 = phi i32 [ %call284, %bb16 ], [ %load19, %bb4 ] %phi232 = phi i32 [ %add270, %bb16 ], [ %load17, %bb4 ] %phi233 = phi i32 [ %add283, %bb16 ], [ %load15, %bb4 ] %call234 = call i32 @llvm.fshl.i32(i32 %phi233, i32 %phi233, i32 5) #5 %and235 = and i32 %phi232, %phi231 %xor236 = xor i32 %phi232, -1 %and237 = and i32 %xor236, %phi230 %getelementptr238 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %phi228 %load239 = load i32, ptr addrspace(1) %getelementptr238, align 4, !tbaa !28, !noundef !3 %add240 = add i32 %phi229, 1518500249 %add241 = add i32 %add240, %and235 %add242 = add i32 %add241, %and237 %add243 = add i32 %add242, %call234 %add244 = add i32 %add243, %load239 %call245 = call i32 @llvm.fshl.i32(i32 %phi232, i32 %phi232, i32 30) #5 %add246 = add nuw nsw i64 %phi228, 1 %call247 = call i32 @llvm.fshl.i32(i32 %add244, i32 %add244, i32 5) #5 %and248 = and i32 %phi233, %call245 %xor249 = xor i32 %phi233, -1 %and250 = and i32 %xor249, %phi231 %getelementptr251 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add246 %load252 = load i32, ptr addrspace(1) %getelementptr251, align 4, !tbaa !28, !noundef !3 %add253 = add i32 %phi230, 1518500249 %add254 = add i32 %add253, %and248 %add255 = add i32 %add254, %and250 %add256 = add i32 %add255, %call247 %add257 = add i32 %add256, %load252 %call258 = call i32 @llvm.fshl.i32(i32 %phi233, i32 %phi233, i32 30) #5 %add259 = add nuw nsw i64 %phi228, 2 %call260 = call i32 @llvm.fshl.i32(i32 %add257, i32 %add257, i32 5) #5 %and261 = and i32 %add244, %call258 %xor262 = xor i32 %add244, -1 %and263 = and i32 %xor262, %call245 %getelementptr264 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add259 %load265 = load i32, ptr addrspace(1) %getelementptr264, align 4, !tbaa !28, !noundef !3 %add266 = add i32 %phi231, 1518500249 %add267 = add i32 %add266, %and261 %add268 = add i32 %add267, %and263 %add269 = add i32 %add268, %call260 %add270 = add i32 %add269, %load265 %call271 = call i32 @llvm.fshl.i32(i32 %add244, i32 %add244, i32 30) #5 %add272 = add nuw nsw i64 %phi228, 3 %call273 = call i32 @llvm.fshl.i32(i32 %add270, i32 %add270, i32 5) #5 %and274 = and i32 %add257, %call271 %xor275 = xor i32 %add257, -1 %and276 = and i32 %xor275, %call258 %getelementptr277 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add272 %load278 = load i32, ptr addrspace(1) %getelementptr277, align 4, !tbaa !28, !noundef !3 %add279 = add i32 %call245, 1518500249 %add280 = add i32 %add279, %and274 %add281 = add i32 %add280, %and276 %add282 = add i32 %add281, %call273 %add283 = add i32 %add282, %load278 %call284 = call i32 @llvm.fshl.i32(i32 %add257, i32 %add257, i32 30) #5 %add285 = add nuw nsw i64 %phi228, 4 %icmp286 = icmp ugt i64 %add272, 18 br i1 %icmp286, label %bb6, label %bb16, !prof !30 vectorized_slp_bb: ; preds = %vectorized_slp_bb, %bb2 %iv = phi i64 [ %add323, %vectorized_slp_bb ], [ 16, %bb2 ] %add288 = add nsw i64 %iv, -3 %getelementptr289 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add288 %load290 = load i32, ptr addrspace(1) %getelementptr289, align 4, !tbaa !28, !noundef !3 %add291 = add nsw i64 %iv, -8 %getelementptr292 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add291 %load293 = load i32, ptr addrspace(1) %getelementptr292, align 4, !tbaa !28, !noundef !3 %xor294 = xor i32 %load293, %load290 %add295 = add nsw i64 %iv, -14 %getelementptr296 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add295 %load297 = load i32, ptr addrspace(1) %getelementptr296, align 4, !tbaa !28, !noundef !3 %xor298 = xor i32 %xor294, %load297 %add299 = add nsw i64 %iv, -16 %getelementptr300 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add299 %load301 = load i32, ptr addrspace(1) %getelementptr300, align 4, !tbaa !28, !noundef !3 %xor302 = xor i32 %xor298, %load301 %call303 = call i32 @llvm.fshl.i32(i32 %xor302, i32 %xor302, i32 1) #5 %getelementptr304 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %iv store i32 %call303, ptr addrspace(1) %getelementptr304, align 4, !tbaa !28 %add305 = add nuw nsw i64 %iv, 1 %add306 = add nsw i64 %iv, -2 %getelementptr307 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add306 %load308 = load i32, ptr addrspace(1) %getelementptr307, align 4, !tbaa !28, !noundef !3 %add309 = add nsw i64 %iv, -7 %getelementptr310 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add309 %load311 = load i32, ptr addrspace(1) %getelementptr310, align 4, !tbaa !28, !noundef !3 %xor312 = xor i32 %load311, %load308 %add313 = add nsw i64 %iv, -13 %getelementptr314 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add313 %load315 = load i32, ptr addrspace(1) %getelementptr314, align 4, !tbaa !28, !noundef !3 %xor316 = xor i32 %xor312, %load315 %add317 = add nsw i64 %iv, -15 %getelementptr318 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add317 %load319 = load i32, ptr addrspace(1) %getelementptr318, align 4, !tbaa !28, !noundef !3 %xor320 = xor i32 %xor316, %load319 %call321 = call i32 @llvm.fshl.i32(i32 %xor320, i32 %xor320, i32 1) #5 %getelementptr322 = getelementptr inbounds i32, ptr addrspace(1) %getelementptr4, i64 %add305 store i32 %call321, ptr addrspace(1) %getelementptr322, align 4, !tbaa !28 %add323 = add nuw nsw i64 %iv, 2 %icmp324 = icmp ugt i64 %add305, 78 br i1 %icmp324, label %6, label %vectorized_slp_bb, !prof !31 bb18: ; preds = %bb1 call void (...) @llvm.experimental.deoptimize.isVoid(i32 13) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 43, i32 2, i32 11, i32 0, i32 0, ptr addrspace(1) %load2, i32 3, i32 13, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 16, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null) ] ret void 10: ; preds = %4 %call325 = call noalias ptr addrspace(1) @f.42(i32 10, i64 16, i64 336, i64 80, i64 0) %icmp326 = icmp eq ptr addrspace(1) %call325, null br i1 %icmp326, label %11, label %bb19, !prof !32 11: ; preds = %10 %call327 = call i64 @llvm.read_register.i64(metadata !33) %inttoptr = inttoptr i64 %call327 to ptr store ptr null, ptr addrspace(256) inttoptr (i64 1632 to ptr addrspace(256)), align 32, !tbaa !34 store ptr %inttoptr, ptr addrspace(256) inttoptr (i64 1624 to ptr addrspace(256)), align 8, !tbaa !34 %call328 = call noalias ptr addrspace(1) @f.43(i64 %load, i32 10, i32 10, i32 80) [ "deopt"(i32 0, i32 1, i32 0, i32 10, i32 2, i32 11, i32 0, i32 0, ptr addrspace(1) %0, i32 3, i32 80, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null) ] store ptr null, ptr addrspace(256) inttoptr (i64 1624 to ptr addrspace(256)), align 8, !tbaa !34, !verifier-exception !36 br label %bb19 bb19: ; preds = %11, %10 %phi329 = phi ptr addrspace(1) [ %call328, %11 ], [ %call325, %10 ] fence release ;store ptr addrspace(1) %phi329, ptr addrspace(1) %getelementptr, align 8, !tbaa !12 store ptr addrspace(1) %phi329, ptr addrspace(1) %getelementptr, align 8 br label %5 12: ; preds = %6 call void (...) @llvm.experimental.deoptimize.isVoid(i32 11) #5 [ "deopt"(i32 0, i32 1, i32 0, i32 107, i32 2, i32 11, i32 0, i32 0, ptr addrspace(1) null, i32 3, i32 0, i32 0, ptr addrspace(1) %0, i32 0, ptr addrspace(1) %1, i32 3, i32 %2, i32 0, ptr addrspace(1) %3, i32 3, i32 80, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null, i32 7, ptr null) ] ret void } ; Function Attrs: nounwind willreturn memory(readwrite) declare ptr @f.39() #1 ; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none) declare i32 @llvm.fshl.i32(i32, i32, i32) #2 declare noalias ptr addrspace(1) @f.42(i32, i64, i64, i64, i64) ; Function Attrs: nocallback nofree nosync nounwind willreturn memory(read) declare i64 @llvm.read_register.i64(metadata) #3 ; Function Attrs: nounwind memory(readwrite) declare noalias nonnull align 8 ptr addrspace(1) @f.43(i64, i32, i32, i32) ; Function Attrs: nounwind memory(readwrite) declare noalias nonnull align 8 ptr addrspace(1) @f.44(i64, i32, i32, i32) attributes #0 = { uwtable "azul-deopt-on-throw" "disable-tail-calls"="true" "no-realign-stack" "patchable-function"="prologue-short-redirect" "simplified-after-inlining" "target-cpu"="cascadelake" "target-features"="+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f,+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f,+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f,+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f" } attributes #1 = { nounwind willreturn memory(readwrite) "gc-leaf-function" "target-features"="+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f,+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f,+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f" } attributes #2 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) } attributes #3 = { nocallback nofree nosync nounwind willreturn memory(read) } attributes #5 = { "inline-remark"="cost=never, reason=unavailable definition" } !0 = !{!"-mcpu=cascadelake"} !1 = !{!"-code-model=large"} !2 = !{!"-mattr=+avx512cd,-sha,+xsaveopt,-avxvnni,-mwaitx,+sse4.2,-cldemote,+avx512f,+lzcnt,+fsgsbase,+aes,-sse4a,+rtm,+fma,-avx512vp2intersect,-avxneconvert,+popcnt,-prefetchi,+avx2,-uintr,-ptwrite,+fxsr,-pconfig,-avx512er,+rdseed,+pku,-rdpid,-avx512vbmi,-avx512vbmi2,+sse3,+xsaves,-amx-tile,-fma4,+invpcid,-cmpccxadd,-prefetchwt1,+ssse3,+pclmul,+clflushopt,-tsxldtrk,+crc32,+rdrnd,+sse2,-kl,-clzero,+bmi,-raoint,+xsavec,-serialize,-avxvnniint8,+sse,-rdpru,-tbm,-avx512bf16,-waitpkg,-amx-fp16,-avx512ifma,-vaes,+f16c,+sahf,+xsave,+avx512bw,-amx-int8,-vpclmulqdq,-sgx,-avx512fp16,-gfni,-amx-bf16,+bmi2,-movdir64b,+avx512vl,-xop,+prfchw,+cx16,-enqcmd,+64bit,-amx-complex,-avx512pf,-lwp,-avx512vpopcntdq,+avx512dq,+mmx,-avxifma,+avx512vnni,+avx,+cmov,-hreset,+sse4.1,+movbe,+adx,+clwb,-widekl,-movdiri,+cx8,-shstk,-avx512bitalg,-wbnoinvd,-avx512f"} !3 = !{} !11 = !{!"function_entry_count", i64 32768} !12 = !{!13, !17, i64 64} !13 = !{!"sun/security/provider/SHA.instance", !14, i64 0, !17, i64 64, !17, i64 72} !14 = !{!"sun/security/provider/DigestBase.instance", !15, i64 0, !17, i64 16, !17, i64 24, !17, i64 28, !17, i64 32, !17, i64 40, !17, i64 48, !17, i64 56} !15 = !{!"java/security/MessageDigestSpi.instance", !16, i64 0, !17, i64 8} !16 = !{!"java/lang/Object.instance", !17, i64 0} !17 = !{!"tbaa_local_fields", !18, i64 0} !18 = !{!"dolphin-tbaa-access-type"} !19 = !{i64 16} !20 = !{i64 8} !21 = !{!"branch_weights", i32 1, i32 24576} !22 = !{!"branch_weights", i32 1, i32 983040} !23 = !{i32 0, i32 2147483646} !24 = !{!13, !17, i64 72} !25 = !{!26, !26, i64 0, i64 1} !26 = !{!"array_length_access", !18} !27 = !{!"branch_weights", i32 983040, i32 1} !28 = !{!29, !29, i64 0} !29 = !{!"int.array", !18} !30 = !{!"branch_weights", i32 1, i32 3} !31 = !{!"branch_weights", i32 1, i32 31} !32 = !{!"branch_weights", i32 1, i32 1048575} !33 = !{!"rsp"} !34 = !{!35, !35, i64 0} !35 = !{!"frameAnchor_access", !18} !36 = !{i32 1}
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