📄 tronical.s
字号:
/*Assembly derived from the following program compiled with -O2.This fools Valgrind, causing it to give a false error.#include <stdio.h>struct Foo{ int a1 : 1; int a2 : 1; int a3 : 1; int a4 : 1; int a5 : 1; int a6 : 1; int a7 : 1; int bleh : 1;};struct Foo* foo;void set(){ foo->bleh = 1;}void get(){ if ( foo->bleh == 0 ) printf( "blieb\n" );}int main(){ foo = malloc(sizeof(struct Foo)); set(); get(); return 0;}*/ .file "tronical.c" .version "01.01"gcc2_compiled.:.text .align 4.globl set .type set,@functionset: pushl %ebp movl foo, %eax orb $128, (%eax) movl %esp, %ebp popl %ebp ret.Lfe1: .size set,.Lfe1-set .section .rodata.LC0: .string "blieb\n".text .align 4.globl get .type get,@functionget: pushl %ebp movl %esp, %ebp subl $8, %esp movl foo, %eax cmpb $0, (%eax) js .L4 subl $12, %esp pushl $.LC0 call printf addl $16, %esp.L4: leave ret.Lfe2: .size get,.Lfe2-get .align 4.globl main .type main,@functionmain: pushl %ebp movl %esp, %ebp subl $20, %esp pushl $4 call malloc movl %eax, foo call set call get xorl %eax, %eax leave ret.Lfe3: .size main,.Lfe3-main .comm foo,4,4 .ident "GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-98)"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -