Skip to content

Instantly share code, notes, and snippets.

@stepancheg
Last active December 30, 2015 07:09
Show Gist options
  • Save stepancheg/7794096 to your computer and use it in GitHub Desktop.
Save stepancheg/7794096 to your computer and use it in GitHub Desktop.
compile with rustc -O -S --lib ./xxx.rs
struct Aaa {
a: int,
}
fn foo() -> ~Aaa {
// placement new
~Aaa { a: 1 }
}
fn box<T>(t: T) -> ~T { ~t }
fn bar() -> ~Aaa {
// allocate on stack and move (copy) value into `box` function
box(Aaa { a: 1 })
}
.section __TEXT,__text,regular,pure_instructions
.globl __ZN3foo17h6495c5de5408ccaj4v0.0E
.align 4, 0x90
__ZN3foo17h6495c5de5408ccaj4v0.0E:
.cfi_startproc
cmpq %gs:816, %rsp
ja LBB0_2
movabsq $8, %r10
movabsq $0, %r11
callq ___morestack
ret
LBB0_2:
pushq %rbp
Ltmp2:
.cfi_def_cfa_offset 16
Ltmp3:
.cfi_offset %rbp, -16
movq %rsp, %rbp
Ltmp4:
.cfi_def_cfa_register %rbp
movl $8, %esi
callq __ZN2rt11global_heap10malloc_raw19h1684dbbf724e2218ai4v0.8E
movq $1, (%rax)
popq %rbp
ret
.cfi_endproc
.globl __ZN3bar17h6495c5de5408ccaF4v0.0E
.align 4, 0x90
__ZN3bar17h6495c5de5408ccaF4v0.0E:
.cfi_startproc
cmpq %gs:816, %rsp
ja LBB1_2
movabsq $8, %r10
movabsq $0, %r11
callq ___morestack
ret
LBB1_2:
pushq %rbp
Ltmp7:
.cfi_def_cfa_offset 16
Ltmp8:
.cfi_offset %rbp, -16
movq %rsp, %rbp
Ltmp9:
.cfi_def_cfa_register %rbp
movl $8, %esi
callq __ZN2rt11global_heap10malloc_raw19h1684dbbf724e2218ai4v0.8E
movq $1, (%rax)
popq %rbp
ret
.cfi_endproc
.section __DATA,__data
.globl __rust_crate_map_xxx_0.0_15fb3a718ea23983
.align 4
__rust_crate_map_xxx_0.0_15fb3a718ea23983:
.long 1
.space 4
.quad __rust_mod_map
.quad __rust_crate_map_std_0.8_6c65cf4b443341b1
.quad 0
.zerofill __DATA,__bss,__rust_mod_map,16,3
.section __TEXT,__const
.globl _rust_abi_version
.align 3
_rust_abi_version:
.quad 1
.section __DATA,__note.rustc
.align 4
_rust_metadata:
.ascii "rust\000\000\000\001\355\230\tt\034u\035\307'm\377\377\236\301\3206\263\363\237\355\201\215x\000\326l7I\223xPz\211G\017iA%\206\274\331\315$\035\233\335\304\335II\245\226\264\331\244i\032\241\205\342\003\346\241\210E+\342\355\363x\250\217\303\353)>\nR*\255x\202\367Q\301\003T\252\237\377d\263\233%\366\251}\365hm\336\373\314\356\314\374\3477\337\371\315wg\376\371\356\2570\214\212Xm[\"\356,\216\325\273\316\242xC}\374\275l\274\3606\026\215\373X\324\336\304bR\207\227\336x#_\316\016\327\322N\312\275\225/\023{zz\212[7\271\231l\270\265za\365\355|\236\367~\026\347\336\241\267d\375\326;G\366\324\177H\237\262.YW\233l\253I\324\324\304\3435\261D\354I6\032\317\350\305\222\276py5\313\352%\275\272\312\261\360\300\306x\376\2636\377\331\240?'U7\306\352\363_\342\261\355\025\306\274\353\006+\214\312\252\235lZ\276\243\257\272\261z\210oe\251\\\357?_\345n\276L\271'\207\212\262{{u\241E\272P<_h\270\245\205\213iI9\311LgV\017\235\235\037Z\262C\037\266 <bun\233\243\207M\035\031v\3376gXo\366t\315:\206M\335\250\277\325\206c\327\351]3\234&\326\267\244\027\246\233\232\233s}\0279\216\276\037\206\2561=_Co|:\254\362%\226g\025\316\023\326\334C\315\310u\025\206(\277^\037wfqfqf\361\257/\312\367\262\230\302\017\353Ml\220\247\3475\376?-n\2500&\361Q\366\030\374\020~\002\277\204\337\302\037\340\317\2061\201\375\023\004L\203\347\301lP0\017\252\340\305\360RX\004\213\341\025p\021\254\204\327\301Z\270\024.\207\026h\005\017\322\220\205\036x\007l\207\0350\f{\340]\020\300\255p;\334\001\037\205O\301\347\340\213p\037|\r\276\t\017\301!\370\016\374\000~\f\277\200\243\360{\370\023\374\225\327\033\027<q*\234\005\263\300\202\271\260\000^\004\027@\f\352\340\345\260\004V\300ka\r\254\2077\303\025\220\204\r\220\202\f\\\t[`\033\f\300.\330\r7\300\315\360\036\330\007\037\204\217\300'\341\263\360\005\270\027\276\n\367\303\203\360\b\034\201\357\303\023\360s\370\r\374\016\236\201c\274\231'\002?\307I\3450\023\"0\007\236\017/\204\363\365\333\033j\241\021.\204\345\360\032X\r\353\200\237\362\244fH@\273\236\324\300\333\364\304\005\256\202^\350\207!\270\026\366\302M\360nx\037\354\207\017\303'\3403\360y\270\007\276\002\337\200\003p\020\016\303\367\340q\370\031\374\032\236\202\247\341Y\303\020\030ML\206\031p6\230\200\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\201\267\004\336\022xK\340-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267$\336\222xK\342-\211\267\344\023zZ\266A\317\222\032\3029S\233\236o\315Z\3515]\322\235\365/hnj\336Z\025k\250iLV\345\372\332:;Kf\\\254\207\323\260w\2628\247\345\362\325q6\304\026o\250\253i\250M\326\266\272\2655\325\365\311\244\363\326\232M\314}W\214\314\3158\331\264\305;rzn9r\266]\372\215\262\276\261\272qQ\335\226\205\372\324v\361\324]\341\326\352\346\255\371/\271\276DgO\211\002\326C\005\007\230\337\035\016\372R^\272\177\320\030\371\233\311\252\323SX\235\377 \263\277\243\301\260\227f\326\356\266\266x\276\233\332\315\246\307\366\350R\206\236\033>\024\364{\255n\332\037\326e\203~\307\3673Y\375\230\224{\303!\301v\257uL\365\\\272\263\325\345\b\352\264\350B\251\260P\231.\224\b\006\274tW\267\257\217.;\022\036]\306\243\266\354@0\350e[R\335~\242ch\033\365\374\315%5g\347k\366\371\233uEc\177Xq:\025\215[\202\\\266\313I\007\003\355\035\235\t'<z0\353\266\247P\033Jl*\234\304X\033\f\205W\341\265ynfx\333\372`\260\303ks}/\345\006\003k\272|\2573\255kO/\\6\027\326\357o\356r\263\341\356\313\334\344\270\335\3079\254\240{V^\\_\227\343\227\\Pe\376\202rk\035?\274\242\273\n=2>\026\354Z\352\245[\275t\373*\206\024k\227\215\234\363D/\327\377\267]n^\322\330\3533\203\201\316n\237\033]\262U=\3476\036\013\213L\324E\236\032w\317\255S\364\236G\362\342\372C7\007C\253\272}'\341ux\376\346\343\334\312\355\311\266`g\306\365\371\177ps\307\370\373=\320\325\235\371\273\007'<?\273]o\250\bv\216^\324\361e\357\244\215]N\306I\225\fYW\254x\261\356\334\262b\347\352G\177\3634m\354}\261\203\201Dgw\272\365\370\247\032\332\344\271W\206\217\221\222\207D\177\326O\371%[rnOWfLC\313\246\024\345<[r\322\271\243\017\225\025\034\021\332\341P8T\352\241\367\027\206E\203\334\245\3515]\343z5\266\324\234q\245\006\302\241\225z\350U\377\315\237\327\310\251\307\377\230\346\005\375\231\356\016\016\274fiGgr\343\262\rnrc\351\243\241\244@\337&/\253\357A\326{\256\355&\214\031\366\255\n&V\207X\237\363p\341\311}\220\325\362\233\365k\247*\261\270\2551\346T=\252_;\245\003\246\217\271\203\207\371\272\265twg0\330\356\246\335\214\227\314\006\327\352\353\035q]K\253\333\026v\320*vp\344T\243o\270`8\343\266\323\265\221\361\307\355!\217\211\022\205\247\301%<\302\312\302\202\004[K\230\037\364-w\333\364\221\225\341\2213\365\221\323\212\357\330#%Wm\037\034'E\327\214\025\006T\352\001\013\n5\255\260\346d]\263\274\370J\302\354\272\231\321\322\243f\350\262\223\363\323\f]uMa\377,\275\177I\241j]X\265\\W=?\350Of\034\337-\0247F~t\305\207HoaOi\315\310I\253y\262;Z\332\233y\305\336T%\032b\215\365U\245\373\347\216\333_zG\346\234\320\035\2313\356\216\024\346\216\306\025z\356\030\217\025g\252\370\253\272\2461\026gz\232p2\245\223C'S:=e\303\370\351\351\312\261\323S\235\023\272z\n\327\364\017#\220\253\331 N\305\177\372\317,Nt1z\357\215o\033\377\261s\225\361\277\2741\361$\024\232Fx`L\375\337o\356\351\227-\216^Y\345\215l\230\177\362\353N\177\013\033f\236:=\311\247\216&\251\242I\252h\222*\232\244\212&\251\242IbeV\003\211\225Ibe\222X\231\313\201\304\312$\2612I\254L\fb\222X\231$V&\211\225Ibe\222X\231$V&\211\225\331\013$V&\211\225Ibe\222X\231$V&\211\225Ibe\356\007\022+\223\304\312$\2612I\254L\022+\223\304\312$\2612\017\000\211\225Ibe\222X\231\217\003\211\225Ibe\222X\231$V&\211U\204\304*Bb\025!\261\212\220XEH\254\"Q8\007\316\205\363\340eP\003\r\360*X\006\027\303*\270\004\336\b\334\276\210\003m\260\021\272\240\033\336\016\274e\"\274\316\";\341\032\270\036\260Q\344\026\270\r>\000w\302\307\341\323p\027\334\r_\206\257\303\003\3600<\n\337\205\037\301O\341W\360$\374\021\376\302\233\271\f$L\007\356\221U\t$V\026\211\225Ebe\221XY$V\326\022 \261\262H\254,\022+\213\304\312\"\261\262H\254,\022+k\003\220XY$V\026\211\225Ebe\221XY\350\266\320m\241\333B\267\205n\013\335\026\272-t[\350\266\320m\241\333B\267E\322f\221\264Y$m\026I\233u\024H\332,\2226\213\244Ma E\322\246H\332\024I\233\"iS$m\212\244M\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\241[\321oE\277\025\375V\350V\350V\350V\350V\350V\350V\350V\350V\350V\350V\350V\350V\364[\321oE\277\025\375V\364[\321oE\277\025\375V\364[\321o\233~\333\364\333\246\3376\375\266\351\267m\303|x\001\274\004\026B\034\352\341\225\260\024^\r\257\007t\333\350\266\321m\243\333F\267M\277m\372m\323o\233\204\320&!\264w\003\t\241MBh\223\020\332\373\000\3356\272mt\333\350\266\321m?\240\377}\000t\333\350\266\321m\243\333F\267\215n\033\3356\272\243\350\216\242;\212\356(\272\243\350\216\242;\212\356(\272\243\350\216\242;\212\356(\272\243\350\216\242;\212\356(\272\243o\200\313\240\211\007\200\3617"
.no_dead_strip _rust_metadata
.subsections_via_symbols
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment