Skip to content

Instantly share code, notes, and snippets.

@tsavola
Created October 24, 2017 20:30
Show Gist options
  • Save tsavola/f0b36840ccf2b0639591aa7f30750498 to your computer and use it in GitHub Desktop.
Save tsavola/f0b36840ccf2b0639591aa7f30750498 to your computer and use it in GitHub Desktop.
.text
.file "llvm-link"
.hidden main # -- Begin function main
.globl main
.type main,@function
main: # @main
.result i32
.local i32
# BB#0:
i32.const $push6=, 0
i32.const $push4=, 0
i32.load $push3=, __stack_pointer($pop4)
i32.const $push5=, 32
i32.sub $push15=, $pop3, $pop5
tee_local $push14=, $0=, $pop15
i32.store __stack_pointer($pop6), $pop14
i32.const $push0=, _ZL5dummyv@FUNCTION
i32.store 12($0), $pop0
i32.const $push1=, _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE+8
i32.store 8($0), $pop1
i32.const $push10=, 8
i32.add $push11=, $0, $pop10
i32.store 24($0), $pop11
i32.const $push12=, 8
i32.add $push13=, $0, $pop12
i32.call $drop=, _ZNSt3__18functionIFvvEED2Ev@FUNCTION, $pop13
i32.const $push9=, 0
i32.const $push7=, 32
i32.add $push8=, $0, $pop7
i32.store __stack_pointer($pop9), $pop8
i32.const $push2=, 0
# fallthrough-return: $pop2
.endfunc
.Lfunc_end0:
.size main, .Lfunc_end0-main
# -- End function
.type _ZL5dummyv,@function # -- Begin function _ZL5dummyv
_ZL5dummyv: # @_ZL5dummyv
# BB#0:
# fallthrough-return
.endfunc
.Lfunc_end1:
.size _ZL5dummyv, .Lfunc_end1-_ZL5dummyv
# -- End function
.section .text._ZNSt3__18functionIFvvEED2Ev,"axG",@progbits,_ZNSt3__18functionIFvvEED2Ev,comdat
.hidden _ZNSt3__18functionIFvvEED2Ev # -- Begin function _ZNSt3__18functionIFvvEED2Ev
.weak _ZNSt3__18functionIFvvEED2Ev
.type _ZNSt3__18functionIFvvEED2Ev,@function
_ZNSt3__18functionIFvvEED2Ev: # @_ZNSt3__18functionIFvvEED2Ev
.param i32
.result i32
.local i32
# BB#0:
block
i32.load $push6=, 16($0)
tee_local $push5=, $1=, $pop6
i32.eq $push0=, $0, $pop5
br_if 0, $pop0 # 0: down to label0
# BB#1:
block
i32.eqz $push7=, $1
br_if 0, $pop7 # 0: down to label1
# BB#2:
i32.load $push1=, 0($1)
i32.load $push2=, 20($pop1)
call_indirect $1, $pop2
.LBB2_3:
end_block # label1:
return $0
.LBB2_4:
end_block # label0:
i32.load $push3=, 0($1)
i32.load $push4=, 16($pop3)
call_indirect $1, $pop4
copy_local $push8=, $0
# fallthrough-return: $pop8
.endfunc
.Lfunc_end2:
.size _ZNSt3__18functionIFvvEED2Ev, .Lfunc_end2-_ZNSt3__18functionIFvvEED2Ev
# -- End function
.section .text._ZNSt3__110__function6__baseIFvvEED2Ev,"axG",@progbits,_ZNSt3__110__function6__baseIFvvEED2Ev,comdat
.hidden _ZNSt3__110__function6__baseIFvvEED2Ev # -- Begin function _ZNSt3__110__function6__baseIFvvEED2Ev
.weak _ZNSt3__110__function6__baseIFvvEED2Ev
.type _ZNSt3__110__function6__baseIFvvEED2Ev,@function
_ZNSt3__110__function6__baseIFvvEED2Ev: # @_ZNSt3__110__function6__baseIFvvEED2Ev
.param i32
.result i32
# BB#0:
copy_local $push0=, $0
# fallthrough-return: $pop0
.endfunc
.Lfunc_end3:
.size _ZNSt3__110__function6__baseIFvvEED2Ev, .Lfunc_end3-_ZNSt3__110__function6__baseIFvvEED2Ev
# -- End function
.section .text._ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev,"axG",@progbits,_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev,comdat
.hidden _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev # -- Begin function _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev
.weak _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev
.type _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev,@function
_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev: # @_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev
.param i32
# BB#0:
call _ZdlPv@FUNCTION, $0
# fallthrough-return
.endfunc
.Lfunc_end4:
.size _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev, .Lfunc_end4-_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev
# -- End function
.section .text._ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv,"axG",@progbits,_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv,comdat
.hidden _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv # -- Begin function _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv
.weak _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv
.type _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv,@function
_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv: # @_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv
.param i32
.result i32
.local i32
# BB#0:
i32.const $push0=, 8
i32.call $push4=, _Znwj@FUNCTION, $pop0
tee_local $push3=, $1=, $pop4
i32.const $push1=, _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE+8
i32.store 0($pop3), $pop1
i32.load $push2=, 4($0)
i32.store 4($1), $pop2
copy_local $push5=, $1
# fallthrough-return: $pop5
.endfunc
.Lfunc_end5:
.size _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv, .Lfunc_end5-_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv
# -- End function
.section .text._ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE,"axG",@progbits,_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE,comdat
.hidden _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE # -- Begin function _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE
.weak _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE
.type _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE,@function
_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE: # @_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE
.param i32, i32
# BB#0:
i32.const $push0=, _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE+8
i32.store 0($1), $pop0
i32.load $push1=, 4($0)
i32.store 4($1), $pop1
# fallthrough-return
.endfunc
.Lfunc_end6:
.size _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE, .Lfunc_end6-_ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE
# -- End function
.section .text._ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv,"axG",@progbits,_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv,comdat
.hidden _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv # -- Begin function _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv
.weak _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv
.type _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv,@function
_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv: # @_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv
.param i32
# BB#0:
# fallthrough-return
.endfunc
.Lfunc_end7:
.size _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv, .Lfunc_end7-_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv
# -- End function
.section .text._ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv,"axG",@progbits,_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv,comdat
.hidden _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv # -- Begin function _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv
.weak _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv
.type _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv,@function
_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv: # @_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv
.param i32
# BB#0:
call _ZdlPv@FUNCTION, $0
# fallthrough-return
.endfunc
.Lfunc_end8:
.size _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv, .Lfunc_end8-_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv
# -- End function
.section .text._ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv,"axG",@progbits,_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv,comdat
.hidden _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv # -- Begin function _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv
.weak _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv
.type _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv,@function
_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv: # @_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv
.param i32
# BB#0:
i32.load $push0=, 4($0)
call_indirect $pop0
# fallthrough-return
.endfunc
.Lfunc_end9:
.size _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv, .Lfunc_end9-_ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv
# -- End function
.hidden _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE # @_ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE
.type _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE,@object
.section .data.rel.ro._ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE,"aGw",@progbits,_ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE,comdat
.weak _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE
.p2align 2
_ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE:
.int32 0
.int32 0
.int32 _ZNSt3__110__function6__baseIFvvEED2Ev@FUNCTION
.int32 _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_ED0Ev@FUNCTION
.int32 _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEv@FUNCTION
.int32 _ZNKSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7__cloneEPNS0_6__baseIS2_EE@FUNCTION
.int32 _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E7destroyEv@FUNCTION
.int32 _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_E18destroy_deallocateEv@FUNCTION
.int32 _ZNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EclEv@FUNCTION
.size _ZTVNSt3__110__function6__funcIPFvvENS_9allocatorIS3_EES2_EE, 36
.ident "clang version 6.0.0 (http://llvm.org/git/clang.git b99743553a954ef2e92d143890fe987500088ff8) (http://llvm.org/git/llvm.git 5631544a096b0a3b48213f757e0cd47d10afa2fd)"
.functype _ZdlPv, void, i32
.functype _Znwj, i32, i32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment