Thanks for using Compiler Explorer
Sponsors
Jakt
C++
Ada
Algol68
Analysis
Android Java
Android Kotlin
Assembly
C
C3
Carbon
C with Coccinelle
C++ with Coccinelle
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
Mojo
Nim
Numba
Nix
Objective-C
Objective-C++
OCaml
Odin
OpenCL C
Pascal
Pony
PTX
Python
Racket
Raku
Ruby
Rust
Sail
Snowball
Scala
Slang
Solidity
Spice
SPIR-V
Swift
LLVM TableGen
Toit
Triton
TypeScript Native
V
Vala
Visual Basic
Vyper
WASM
Zig
Javascript
GIMPLE
Ygen
sway
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 20.1.0
clang 21.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
hexagon-clang 16.0.5
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 20.1.0
llc 21.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 20.1.0
opt 21.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
define void @wombat() { bb: br label %bb1.peel.begin bb1.peel.begin: ; preds = %bb br label %bb1.peel bb1.peel: ; preds = %bb1.peel.begin br label %bb2.peel.begin.peel bb2.peel.begin.peel: ; preds = %bb1.peel br label %bb2.peel.peel bb2.peel.peel: ; preds = %bb2.peel.begin.peel br label %bb4.peel.begin.peel.peel bb4.peel.begin.peel.peel: ; preds = %bb2.peel.peel br label %bb4.peel.peel.peel bb4.peel.peel.peel: ; preds = %bb4.peel.begin.peel.peel %trunc.peel.peel.peel = trunc i64 0 to i32 br i1 true, label %bb9.peel.peel.peel, label %bb7.loopexit7.loopexit39 bb9.peel.peel.peel: ; preds = %bb4.peel.peel.peel %sext.peel.peel.peel = sext i32 1 to i64 br i1 false, label %bb11.peel.peel, label %bb4.peel.next.peel.peel bb4.peel.next.peel.peel: ; preds = %bb9.peel.peel.peel br label %bb4.peel2.peel.peel bb4.peel2.peel.peel: ; preds = %bb4.peel.next.peel.peel %trunc.peel3.peel.peel = trunc i64 %sext.peel.peel.peel to i32 br i1 true, label %bb9.peel4.peel.peel, label %bb7.loopexit7.loopexit39 bb9.peel4.peel.peel: ; preds = %bb4.peel2.peel.peel %sext.peel5.peel.peel = sext i32 1 to i64 br i1 false, label %bb11.peel.peel, label %bb4.peel.next1.peel.peel bb4.peel.next1.peel.peel: ; preds = %bb9.peel4.peel.peel br label %bb4.peel.next6.peel.peel bb4.peel.next6.peel.peel: ; preds = %bb4.peel.next1.peel.peel br label %bb2.peel.newph.peel.peel bb2.peel.newph.peel.peel: ; preds = %bb4.peel.next6.peel.peel br label %bb4.peel9.peel bb4.peel9.peel: ; preds = %bb9.peel10.peel, %bb2.peel.newph.peel.peel br i1 true, label %bb9.peel10.peel, label %bb7.loopexit.loopexit37 bb9.peel10.peel: ; preds = %bb4.peel9.peel %sext.peel11.peel = sext i32 1 to i64 br i1 false, label %bb11.loopexit.peel.peel, label %bb4.peel9.peel bb11.loopexit.peel.peel: ; preds = %bb9.peel10.peel %sext.lcssa.ph.peel.peel = phi i64 [ %sext.peel11.peel, %bb9.peel10.peel ] br label %bb11.peel.peel bb11.peel.peel: ; preds = %bb11.loopexit.peel.peel, %bb9.peel4.peel.peel, %bb9.peel.peel.peel %sext.lcssa.peel.peel = phi i64 [ %sext.peel.peel.peel, %bb9.peel.peel.peel ], [ %sext.peel5.peel.peel, %bb9.peel4.peel.peel ], [ %sext.lcssa.ph.peel.peel, %bb11.loopexit.peel.peel ] br i1 false, label %bb1.loopexit.peel, label %bb2.peel.next.peel bb2.peel.next.peel: ; preds = %bb11.peel.peel br label %bb2.peel13.peel bb2.peel13.peel: ; preds = %bb2.peel.next.peel br label %bb4.peel.begin.peel14.peel bb4.peel.begin.peel14.peel: ; preds = %bb2.peel13.peel br label %bb4.peel.peel15.peel bb4.peel.peel15.peel: ; preds = %bb4.peel.begin.peel14.peel %trunc.peel.peel16.peel = trunc i64 %sext.lcssa.peel.peel to i32 br i1 true, label %bb9.peel.peel17.peel, label %bb7.loopexit7.loopexit39 bb9.peel.peel17.peel: ; preds = %bb4.peel.peel15.peel %sext.peel.peel18.peel = sext i32 1 to i64 br i1 false, label %bb11.peel32.peel, label %bb4.peel.next.peel19.peel bb4.peel.next.peel19.peel: ; preds = %bb9.peel.peel17.peel br label %bb4.peel2.peel20.peel bb4.peel2.peel20.peel: ; preds = %bb4.peel.next.peel19.peel %trunc.peel3.peel21.peel = trunc i64 %sext.peel.peel18.peel to i32 br i1 true, label %bb9.peel4.peel22.peel, label %bb7.loopexit7.loopexit39 bb9.peel4.peel22.peel: ; preds = %bb4.peel2.peel20.peel br i1 false, label %bb11.peel32.peel, label %bb4.peel.next1.peel24.peel bb4.peel.next1.peel24.peel: ; preds = %bb9.peel4.peel22.peel br label %bb4.peel.next6.peel25.peel bb4.peel.next6.peel25.peel: ; preds = %bb4.peel.next1.peel24.peel br label %bb2.peel.newph.peel26.peel bb2.peel.newph.peel26.peel: ; preds = %bb4.peel.next6.peel25.peel br label %bb4.peel27.peel bb4.peel27.peel: ; preds = %bb9.peel28.peel, %bb2.peel.newph.peel26.peel br i1 true, label %bb9.peel28.peel, label %bb7.loopexit.loopexit35 bb9.peel28.peel: ; preds = %bb4.peel27.peel br i1 false, label %bb11.loopexit.peel30.peel, label %bb4.peel27.peel bb11.loopexit.peel30.peel: ; preds = %bb9.peel28.peel br label %bb11.peel32.peel bb11.peel32.peel: ; preds = %bb11.loopexit.peel30.peel, %bb9.peel4.peel22.peel, %bb9.peel.peel17.peel br i1 false, label %bb1.loopexit.peel, label %bb2.peel.next12.peel bb2.peel.next12.peel: ; preds = %bb11.peel32.peel br label %bb2.peel.next34.peel bb2.peel.next34.peel: ; preds = %bb2.peel.next12.peel br label %bb1.peel.newph.peel bb1.peel.newph.peel: ; preds = %bb2.peel.next34.peel br label %bb2.peel41 bb2.peel41: ; preds = %bb11.peel54, %bb1.peel.newph.peel br label %bb4.peel.begin.peel42 bb4.peel.begin.peel42: ; preds = %bb2.peel41 br label %bb4.peel.peel43 bb4.peel.peel43: ; preds = %bb4.peel.begin.peel42 br i1 true, label %bb9.peel.peel44, label %bb7.loopexit7.loopexit bb9.peel.peel44: ; preds = %bb4.peel.peel43 br i1 false, label %bb11.peel54, label %bb4.peel.next.peel45 bb4.peel.next.peel45: ; preds = %bb9.peel.peel44 br label %bb4.peel2.peel46 bb4.peel2.peel46: ; preds = %bb4.peel.next.peel45 br i1 true, label %bb9.peel4.peel47, label %bb7.loopexit7.loopexit bb9.peel4.peel47: ; preds = %bb4.peel2.peel46 br i1 false, label %bb11.peel54, label %bb4.peel.next1.peel48 bb4.peel.next1.peel48: ; preds = %bb9.peel4.peel47 br label %bb4.peel.next6.peel49 bb4.peel.next6.peel49: ; preds = %bb4.peel.next1.peel48 br label %bb2.peel.newph.peel50 bb2.peel.newph.peel50: ; preds = %bb4.peel.next6.peel49 br label %bb4.peel51 bb4.peel51: ; preds = %bb9.peel52, %bb2.peel.newph.peel50 br i1 true, label %bb9.peel52, label %bb7.loopexit.loopexit bb9.peel52: ; preds = %bb4.peel51 br i1 false, label %bb11.loopexit.peel53, label %bb4.peel51 bb11.loopexit.peel53: ; preds = %bb9.peel52 br label %bb11.peel54 bb11.peel54: ; preds = %bb11.loopexit.peel53, %bb9.peel4.peel47, %bb9.peel.peel44 br i1 false, label %bb1.loopexit.loopexit.peel, label %bb2.peel41 bb1.loopexit.loopexit.peel: ; preds = %bb11.peel54 br label %bb1.loopexit.peel bb1.loopexit.peel: ; preds = %bb1.loopexit.loopexit.peel, %bb11.peel32.peel, %bb11.peel.peel br label %bb1.peel.next bb1.peel.next: ; preds = %bb1.loopexit.peel br label %bb1.peel56 bb1.peel56: ; preds = %bb1.peel.next br label %bb2.peel.begin.peel57 bb2.peel.begin.peel57: ; preds = %bb1.peel56 br label %bb2.peel.peel58 bb2.peel.peel58: ; preds = %bb2.peel.begin.peel57 br label %bb4.peel.begin.peel.peel59 bb4.peel.begin.peel.peel59: ; preds = %bb2.peel.peel58 br label %bb4.peel.peel.peel60 bb4.peel.peel.peel60: ; preds = %bb4.peel.begin.peel.peel59 %trunc.peel.peel.peel61 = trunc i64 0 to i32 br i1 true, label %bb9.peel.peel.peel62, label %bb7.loopexit7.loopexit39 bb9.peel.peel.peel62: ; preds = %bb4.peel.peel.peel60 %sext.peel.peel.peel63 = sext i32 0 to i64 br i1 false, label %bb11.peel.peel77, label %bb4.peel.next.peel.peel64 bb4.peel.next.peel.peel64: ; preds = %bb9.peel.peel.peel62 br label %bb4.peel2.peel.peel65 bb4.peel2.peel.peel65: ; preds = %bb4.peel.next.peel.peel64 %trunc.peel3.peel.peel66 = trunc i64 %sext.peel.peel.peel63 to i32 br i1 true, label %bb9.peel4.peel.peel67, label %bb7.loopexit7.loopexit39 bb9.peel4.peel.peel67: ; preds = %bb4.peel2.peel.peel65 %sext.peel5.peel.peel68 = sext i32 0 to i64 br i1 false, label %bb11.peel.peel77, label %bb4.peel.next1.peel.peel69 bb4.peel.next1.peel.peel69: ; preds = %bb9.peel4.peel.peel67 br label %bb4.peel.next6.peel.peel70 bb4.peel.next6.peel.peel70: ; preds = %bb4.peel.next1.peel.peel69 br label %bb2.peel.newph.peel.peel71 bb2.peel.newph.peel.peel71: ; preds = %bb4.peel.next6.peel.peel70 br label %bb4.peel9.peel72 bb4.peel9.peel72: ; preds = %bb9.peel10.peel73, %bb2.peel.newph.peel.peel71 br i1 true, label %bb9.peel10.peel73, label %bb7.loopexit.loopexit37 bb9.peel10.peel73: ; preds = %bb4.peel9.peel72 %sext.peel11.peel74 = sext i32 0 to i64 br i1 false, label %bb11.loopexit.peel.peel75, label %bb4.peel9.peel72 bb11.loopexit.peel.peel75: ; preds = %bb9.peel10.peel73 %sext.lcssa.ph.peel.peel76 = phi i64 [ %sext.peel11.peel74, %bb9.peel10.peel73 ] br label %bb11.peel.peel77 bb11.peel.peel77: ; preds = %bb11.loopexit.peel.peel75, %bb9.peel4.peel.peel67, %bb9.peel.peel.peel62 %sext.lcssa.peel.peel78 = phi i64 [ %sext.peel.peel.peel63, %bb9.peel.peel.peel62 ], [ %sext.peel5.peel.peel68, %bb9.peel4.peel.peel67 ], [ %sext.lcssa.ph.peel.peel76, %bb11.loopexit.peel.peel75 ] br i1 false, label %bb1.loopexit.peel115, label %bb2.peel.next.peel79 bb2.peel.next.peel79: ; preds = %bb11.peel.peel77 br label %bb2.peel13.peel80 bb2.peel13.peel80: ; preds = %bb2.peel.next.peel79 br label %bb4.peel.begin.peel14.peel81 bb4.peel.begin.peel14.peel81: ; preds = %bb2.peel13.peel80 br label %bb4.peel.peel15.peel82 bb4.peel.peel15.peel82: ; preds = %bb4.peel.begin.peel14.peel81 %trunc.peel.peel16.peel83 = trunc i64 %sext.lcssa.peel.peel78 to i32 br i1 true, label %bb9.peel.peel17.peel84, label %bb7.loopexit7.loopexit39 bb9.peel.peel17.peel84: ; preds = %bb4.peel.peel15.peel82 %sext.peel.peel18.peel85 = sext i32 0 to i64 br i1 false, label %bb11.peel32.peel96, label %bb4.peel.next.peel19.peel86 bb4.peel.next.peel19.peel86: ; preds = %bb9.peel.peel17.peel84 br label %bb4.peel2.peel20.peel87 bb4.peel2.peel20.peel87: ; preds = %bb4.peel.next.peel19.peel86 %trunc.peel3.peel21.peel88 = trunc i64 %sext.peel.peel18.peel85 to i32 br i1 true, label %bb9.peel4.peel22.peel89, label %bb7.loopexit7.loopexit39 bb9.peel4.peel22.peel89: ; preds = %bb4.peel2.peel20.peel87 br i1 false, label %bb11.peel32.peel96, label %bb4.peel.next1.peel24.peel90 bb4.peel.next1.peel24.peel90: ; preds = %bb9.peel4.peel22.peel89 br label %bb4.peel.next6.peel25.peel91 bb4.peel.next6.peel25.peel91: ; preds = %bb4.peel.next1.peel24.peel90 br label %bb2.peel.newph.peel26.peel92 bb2.peel.newph.peel26.peel92: ; preds = %bb4.peel.next6.peel25.peel91 br label %bb4.peel27.peel93 bb4.peel27.peel93: ; preds = %bb9.peel28.peel94, %bb2.peel.newph.peel26.peel92 br i1 true, label %bb9.peel28.peel94, label %bb7.loopexit.loopexit35 bb9.peel28.peel94: ; preds = %bb4.peel27.peel93 br i1 false, label %bb11.loopexit.peel30.peel95, label %bb4.peel27.peel93 bb11.loopexit.peel30.peel95: ; preds = %bb9.peel28.peel94 br label %bb11.peel32.peel96 bb11.peel32.peel96: ; preds = %bb11.loopexit.peel30.peel95, %bb9.peel4.peel22.peel89, %bb9.peel.peel17.peel84 br i1 false, label %bb1.loopexit.peel115, label %bb2.peel.next12.peel97 bb2.peel.next12.peel97: ; preds = %bb11.peel32.peel96 br label %bb2.peel.next34.peel98 bb2.peel.next34.peel98: ; preds = %bb2.peel.next12.peel97 br label %bb1.peel.newph.peel99 bb1.peel.newph.peel99: ; preds = %bb2.peel.next34.peel98 br label %bb2.peel100 bb2.peel100: ; preds = %bb11.peel113, %bb1.peel.newph.peel99 br label %bb4.peel.begin.peel101 bb4.peel.begin.peel101: ; preds = %bb2.peel100 br label %bb4.peel.peel102 bb4.peel.peel102: ; preds = %bb4.peel.begin.peel101 br i1 true, label %bb9.peel.peel103, label %bb7.loopexit7.loopexit bb9.peel.peel103: ; preds = %bb4.peel.peel102 br i1 false, label %bb11.peel113, label %bb4.peel.next.peel104 bb4.peel.next.peel104: ; preds = %bb9.peel.peel103 br label %bb4.peel2.peel105 bb4.peel2.peel105: ; preds = %bb4.peel.next.peel104 br i1 true, label %bb9.peel4.peel106, label %bb7.loopexit7.loopexit bb9.peel4.peel106: ; preds = %bb4.peel2.peel105 br i1 false, label %bb11.peel113, label %bb4.peel.next1.peel107 bb4.peel.next1.peel107: ; preds = %bb9.peel4.peel106 br label %bb4.peel.next6.peel108 bb4.peel.next6.peel108: ; preds = %bb4.peel.next1.peel107 br label %bb2.peel.newph.peel109 bb2.peel.newph.peel109: ; preds = %bb4.peel.next6.peel108 br label %bb4.peel110 bb4.peel110: ; preds = %bb9.peel111, %bb2.peel.newph.peel109 br i1 true, label %bb9.peel111, label %bb7.loopexit.loopexit bb9.peel111: ; preds = %bb4.peel110 br i1 false, label %bb11.loopexit.peel112, label %bb4.peel110 bb11.loopexit.peel112: ; preds = %bb9.peel111 br label %bb11.peel113 bb11.peel113: ; preds = %bb11.loopexit.peel112, %bb9.peel4.peel106, %bb9.peel.peel103 br i1 false, label %bb1.loopexit.loopexit.peel114, label %bb2.peel100 bb1.loopexit.loopexit.peel114: ; preds = %bb11.peel113 br label %bb1.loopexit.peel115 bb1.loopexit.peel115: ; preds = %bb1.loopexit.loopexit.peel114, %bb11.peel32.peel96, %bb11.peel.peel77 br label %bb1.peel.next55 bb1.peel.next55: ; preds = %bb1.loopexit.peel115 br label %bb1.peel.next116 bb1.peel.next116: ; preds = %bb1.peel.next55 br label %bb.peel.newph bb.peel.newph: ; preds = %bb1.peel.next116 br label %bb1 bb1.loopexit.loopexit: ; preds = %bb11 br label %bb1.loopexit bb1.loopexit: ; preds = %bb1.loopexit.loopexit, %bb11.peel32, %bb11.peel br label %bb1 bb1: ; preds = %bb1.loopexit, %bb.peel.newph %phi = phi i32 [ 0, %bb.peel.newph ], [ 0, %bb1.loopexit ] br label %bb2.peel.begin bb2.peel.begin: ; preds = %bb1 br label %bb2.peel bb2.peel: ; preds = %bb2.peel.begin br label %bb4.peel.begin.peel bb4.peel.begin.peel: ; preds = %bb2.peel br label %bb4.peel.peel bb4.peel.peel: ; preds = %bb4.peel.begin.peel %trunc.peel.peel = trunc i64 0 to i32 br i1 true, label %bb9.peel.peel, label %bb7.loopexit7.loopexit39 bb9.peel.peel: ; preds = %bb4.peel.peel %sext.peel.peel = sext i32 %phi to i64 br i1 false, label %bb11.peel, label %bb4.peel.next.peel bb4.peel.next.peel: ; preds = %bb9.peel.peel br label %bb4.peel2.peel bb4.peel2.peel: ; preds = %bb4.peel.next.peel %trunc.peel3.peel = trunc i64 %sext.peel.peel to i32 br i1 true, label %bb9.peel4.peel, label %bb7.loopexit7.loopexit39 bb9.peel4.peel: ; preds = %bb4.peel2.peel %sext.peel5.peel = sext i32 %phi to i64 br i1 false, label %bb11.peel, label %bb4.peel.next1.peel bb4.peel.next1.peel: ; preds = %bb9.peel4.peel br label %bb4.peel.next6.peel bb4.peel.next6.peel: ; preds = %bb4.peel.next1.peel br label %bb2.peel.newph.peel bb2.peel.newph.peel: ; preds = %bb4.peel.next6.peel br label %bb4.peel9 bb4.peel9: ; preds = %bb9.peel10, %bb2.peel.newph.peel br i1 true, label %bb9.peel10, label %bb7.loopexit.loopexit37 bb9.peel10: ; preds = %bb4.peel9 %sext.peel11 = sext i32 %phi to i64 br i1 false, label %bb11.loopexit.peel, label %bb4.peel9 bb11.loopexit.peel: ; preds = %bb9.peel10 %sext.lcssa.ph.peel = phi i64 [ %sext.peel11, %bb9.peel10 ] br label %bb11.peel bb11.peel: ; preds = %bb11.loopexit.peel, %bb9.peel4.peel, %bb9.peel.peel %sext.lcssa.peel = phi i64 [ %sext.peel.peel, %bb9.peel.peel ], [ %sext.peel5.peel, %bb9.peel4.peel ], [ %sext.lcssa.ph.peel, %bb11.loopexit.peel ] br i1 false, label %bb1.loopexit, label %bb2.peel.next bb2.peel.next: ; preds = %bb11.peel br label %bb2.peel13 bb2.peel13: ; preds = %bb2.peel.next br label %bb4.peel.begin.peel14 bb4.peel.begin.peel14: ; preds = %bb2.peel13 br label %bb4.peel.peel15 bb4.peel.peel15: ; preds = %bb4.peel.begin.peel14 %trunc.peel.peel16 = trunc i64 %sext.lcssa.peel to i32 br i1 true, label %bb9.peel.peel17, label %bb7.loopexit7.loopexit39 bb9.peel.peel17: ; preds = %bb4.peel.peel15 %sext.peel.peel18 = sext i32 %phi to i64 br i1 false, label %bb11.peel32, label %bb4.peel.next.peel19 bb4.peel.next.peel19: ; preds = %bb9.peel.peel17 br label %bb4.peel2.peel20 bb4.peel2.peel20: ; preds = %bb4.peel.next.peel19 %trunc.peel3.peel21 = trunc i64 %sext.peel.peel18 to i32 br i1 true, label %bb9.peel4.peel22, label %bb7.loopexit7.loopexit39 bb9.peel4.peel22: ; preds = %bb4.peel2.peel20 br i1 false, label %bb11.peel32, label %bb4.peel.next1.peel24 bb4.peel.next1.peel24: ; preds = %bb9.peel4.peel22 br label %bb4.peel.next6.peel25 bb4.peel.next6.peel25: ; preds = %bb4.peel.next1.peel24 br label %bb2.peel.newph.peel26 bb2.peel.newph.peel26: ; preds = %bb4.peel.next6.peel25 br label %bb4.peel27 bb4.peel27: ; preds = %bb9.peel28, %bb2.peel.newph.peel26 br i1 true, label %bb9.peel28, label %bb7.loopexit.loopexit35 bb9.peel28: ; preds = %bb4.peel27 br i1 false, label %bb11.loopexit.peel30, label %bb4.peel27 bb11.loopexit.peel30: ; preds = %bb9.peel28 br label %bb11.peel32 bb11.peel32: ; preds = %bb11.loopexit.peel30, %bb9.peel4.peel22, %bb9.peel.peel17 br i1 false, label %bb1.loopexit, label %bb2.peel.next12 bb2.peel.next12: ; preds = %bb11.peel32 br label %bb2.peel.next34 bb2.peel.next34: ; preds = %bb2.peel.next12 br label %bb1.peel.newph bb1.peel.newph: ; preds = %bb2.peel.next34 br label %bb2 bb2: ; preds = %bb11, %bb1.peel.newph br label %bb4.peel.begin bb4.peel.begin: ; preds = %bb2 br label %bb4.peel bb4.peel: ; preds = %bb4.peel.begin br i1 true, label %bb9.peel, label %bb7.loopexit7.loopexit bb9.peel: ; preds = %bb4.peel br i1 false, label %bb11, label %bb4.peel.next bb4.peel.next: ; preds = %bb9.peel br label %bb4.peel2 bb4.peel2: ; preds = %bb4.peel.next br i1 true, label %bb9.peel4, label %bb7.loopexit7.loopexit bb9.peel4: ; preds = %bb4.peel2 br i1 false, label %bb11, label %bb4.peel.next1 bb4.peel.next1: ; preds = %bb9.peel4 br label %bb4.peel.next6 bb4.peel.next6: ; preds = %bb4.peel.next1 br label %bb2.peel.newph bb2.peel.newph: ; preds = %bb4.peel.next6 br label %bb4 bb4: ; preds = %bb9, %bb2.peel.newph br i1 true, label %bb9, label %bb7.loopexit.loopexit bb7.loopexit.loopexit: ; preds = %bb4.peel110, %bb4.peel51, %bb4 %phi8.ph.ph = phi i32 [ %phi, %bb4 ], [ 1, %bb4.peel51 ], [ 0, %bb4.peel110 ] br label %bb7.loopexit bb7.loopexit.loopexit35: ; preds = %bb4.peel27.peel93, %bb4.peel27.peel, %bb4.peel27 %phi8.ph.ph36 = phi i32 [ %phi, %bb4.peel27 ], [ 1, %bb4.peel27.peel ], [ 0, %bb4.peel27.peel93 ] br label %bb7.loopexit bb7.loopexit.loopexit37: ; preds = %bb4.peel9.peel72, %bb4.peel9.peel, %bb4.peel9 %phi8.ph.ph38 = phi i32 [ %phi, %bb4.peel9 ], [ 1, %bb4.peel9.peel ], [ 0, %bb4.peel9.peel72 ] br label %bb7.loopexit bb7.loopexit: ; preds = %bb7.loopexit.loopexit37, %bb7.loopexit.loopexit35, %bb7.loopexit.loopexit %phi8.ph = phi i32 [ %phi8.ph.ph, %bb7.loopexit.loopexit ], [ %phi8.ph.ph36, %bb7.loopexit.loopexit35 ], [ %phi8.ph.ph38, %bb7.loopexit.loopexit37 ] br label %bb7 bb7.loopexit7.loopexit: ; preds = %bb4.peel2.peel105, %bb4.peel.peel102, %bb4.peel2.peel46, %bb4.peel.peel43, %bb4.peel2, %bb4.peel br label %bb7.loopexit7 bb7.loopexit7.loopexit39: ; preds = %bb4.peel2.peel20.peel87, %bb4.peel.peel15.peel82, %bb4.peel2.peel.peel65, %bb4.peel.peel.peel60, %bb4.peel2.peel20.peel, %bb4.peel.peel15.peel, %bb4.peel2.peel.peel, %bb4.peel.peel.peel, %bb4.peel.peel, %bb4.peel2.peel, %bb4.peel.peel15, %bb4.peel2.peel20 %phi8.ph8.ph40 = phi i32 [ %trunc.peel3.peel21, %bb4.peel2.peel20 ], [ %trunc.peel.peel16, %bb4.peel.peel15 ], [ %trunc.peel3.peel, %bb4.peel2.peel ], [ %trunc.peel.peel, %bb4.peel.peel ], [ %trunc.peel.peel.peel, %bb4.peel.peel.peel ], [ %trunc.peel3.peel.peel, %bb4.peel2.peel.peel ], [ %trunc.peel.peel16.peel, %bb4.peel.peel15.peel ], [ %trunc.peel3.peel21.peel, %bb4.peel2.peel20.peel ], [ %trunc.peel.peel.peel61, %bb4.peel.peel.peel60 ], [ %trunc.peel3.peel.peel66, %bb4.peel2.peel.peel65 ], [ %trunc.peel.peel16.peel83, %bb4.peel.peel15.peel82 ], [ %trunc.peel3.peel21.peel88, %bb4.peel2.peel20.peel87 ] br label %bb7.loopexit7 bb7.loopexit7: ; preds = %bb7.loopexit7.loopexit39, %bb7.loopexit7.loopexit %phi8.ph8 = phi i32 [ %phi, %bb7.loopexit7.loopexit ], [ %phi8.ph8.ph40, %bb7.loopexit7.loopexit39 ] br label %bb7 bb7: ; preds = %bb7.loopexit7, %bb7.loopexit %phi8 = phi i32 [ %phi8.ph, %bb7.loopexit ], [ %phi8.ph8, %bb7.loopexit7 ] ret void bb9: ; preds = %bb4 br i1 false, label %bb11.loopexit, label %bb4 bb11.loopexit: ; preds = %bb9 br label %bb11 bb11: ; preds = %bb11.loopexit, %bb9.peel4, %bb9.peel br i1 false, label %bb1.loopexit.loopexit, label %bb2 }
Become a Patron
Sponsor on GitHub
Donate via PayPal
Compiler Explorer Shop
Source on GitHub
Mailing list
Installed libraries
Wiki
Report an issue
How it works
Contact the author
CE on Mastodon
CE on Bluesky
Statistics
Changelog
Version tree