All pastes #410110 Raw Edit

Untitled

public text v1 · immutable
#410110 ·published 2007-03-26 03:37 UTC
rendered paste body
-bash-3.00$ cat foo.c foo.s  
typedef struct {
int a;
int b;
int c;
int d;
int e;
int f;
int g;
int h;
int i;
} foo;

foo blah()
{
foo my;
my.a = 1;
my.b = 5;
my.c = 6;
my.d = 8;
my.e = 100;
my.f = 1000;
my.g = 11;
my.h =88;
my.i = -11;

return my;
}

int main()
{
foo blarg = blah();
return 0;
}

        .section        .text,"ax"
        .align  4

        .globl  blah
        .type   blah,@function
        .align  16
blah:
        pushl   %ebp
        movl    %esp,%ebp
        subl    $44,%esp
.L13:
.L14:
.L16:

/ File foo.c:
/ Line 16
        movl    $1, -40(%ebp)
.L17:
/ Line 17
        movl    $5, -36(%ebp)
.L18:
/ Line 18
        movl    $6, -32(%ebp)
.L19:
/ Line 19
        movl    $8, -28(%ebp)
.L20:
/ Line 20
        movl    $100, -24(%ebp)
.L21:
/ Line 21
        movl    $1000, -20(%ebp)
.L22:
/ Line 22
        movl    $11, -16(%ebp)
.L23:
/ Line 23
        movl    $88, -12(%ebp)
.L24:
/ Line 24
        movl    $-11, -8(%ebp)
.L25:
/ Line 26
        lea     -40(%ebp), %eax
        movl    %eax, -4(%ebp)
        movl    -4(%ebp), %eax
        movl    0(%eax), %eax
        movl    %eax, -44(%ebp)
        jmp     .L12
        .align  4
        jmp     .L12
        .align  4
.L26:
.L27:
.L12:
        movl    8(%ebp), %ecx
        movl    -4(%ebp), %edx
        movl    0(%edx), %eax
        movl    %eax, 0(%ecx)
        movl    4(%edx), %eax
        movl    %eax, 4(%ecx)
        movl    8(%edx), %eax
        movl    %eax, 8(%ecx)
        movl    12(%edx), %eax
        movl    %eax, 12(%ecx)
        movl    16(%edx), %eax
        movl    %eax, 16(%ecx)
        movl    20(%edx), %eax
        movl    %eax, 20(%ecx)
        movl    24(%edx), %eax
        movl    %eax, 24(%ecx)
        movl    28(%edx), %eax
        movl    %eax, 28(%ecx)
        movl    32(%edx), %eax
        movl    %eax, 32(%ecx)
        movl    %ecx, %eax
        leave
        ret     $4
        .size   blah,.-blah
        .align  4

        .globl  main
        .type   main,@function
        .align  16
main:
        pushl   %ebp
        movl    %esp,%ebp
        subl    $88,%esp
        movl    %ebx,-88(%ebp)
.L30:
.L31:
.L33:

/ File foo.c:
/ Line 31
        lea     -40(%ebp), %eax
        movl    %eax, -44(%ebp)
        lea     -80(%ebp), %ebx
        pushl   %ebx
        call    blah
        movl    -44(%ebp), %edx
        movl    0(%ebx), %eax
        movl    %eax, 0(%edx)
        movl    4(%ebx), %eax
        movl    %eax, 4(%edx)
        movl    8(%ebx), %eax
        movl    %eax, 8(%edx)
        movl    12(%ebx), %eax
        movl    %eax, 12(%edx)
        movl    16(%ebx), %eax
        movl    %eax, 16(%edx)
        movl    20(%ebx), %eax
        movl    %eax, 20(%edx)
        movl    24(%ebx), %eax
        movl    %eax, 24(%edx)
        movl    28(%ebx), %eax
        movl    %eax, 28(%edx)
        movl    32(%ebx), %eax
        movl    %eax, 32(%edx)
        movl    -44(%ebp), %eax
        movl    0(%eax), %eax
        movl    %eax, -84(%ebp)
.L34:
/ Line 32
        movl    $0, -4(%ebp)
        jmp     .L29
        .align  4
        jmp     .L29
        .align  4
.L35:
.L36:
.L29:
        movl    -4(%ebp), %eax
        movl    -88(%ebp),%ebx
        leave
        ret
        .size   main,.-main

        .section        .bss,"aw"
Bbss.bss:
        .zero   0
        .size   Bbss.bss,0

        .section        .data,"aw"
Ddata.data:
        .zero   0
        .size   Ddata.data,0

        .section        .rodata,"a"
Drodata.rodata:
        .zero   0
        .size   Drodata.rodata,0
        .globl  .XBAjaAlYD0BG10J.blah.__func__
.XBAjaAlYD0BG10J.blah.__func__:
        .byte   0x62,0x6c,0x61,0x68
        .set    .,.+1
        .type   .XBAjaAlYD0BG10J.blah.__func__,@object
        .size   .XBAjaAlYD0BG10J.blah.__func__,5
        .globl  .XBAjaAlYD0BG10J.main.__func__
.XBAjaAlYD0BG10J.main.__func__:
        .byte   0x6d,0x61,0x69,0x6e
        .set    .,.+1
        .type   .XBAjaAlYD0BG10J.main.__func__,@object
        .size   .XBAjaAlYD0BG10J.main.__func__,5

        .file   "foo.c"
        .ident  "acomp: Sun C 5.8 Patch 121016-05 2007/01/10"

        .globl  __fsr_init_value
__fsr_init_value = 0x0
/  Begin sdCreateSection : .debug_info
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
/   reloc[0]: knd=2, off=6, siz=4, lab1=.debug_abbrev, lab2=, loff=0
/   reloc[1]: knd=2, off=208, siz=4, lab1=.debug_line, lab2=, loff=0
/   reloc[2]: knd=0, off=222, siz=4, lab1=blah, lab2=, loff=0
/   reloc[3]: knd=0, off=226, siz=4, lab1=.L27, lab2=, loff=0
/   reloc[4]: knd=0, off=305, siz=4, lab1=.XBAjaAlYD0BG10J.blah.__func__, lab2=, loff=0
/   reloc[5]: knd=0, off=472, siz=4, lab1=main, lab2=, loff=0
/   reloc[6]: knd=0, off=476, siz=4, lab1=.L36, lab2=, loff=0
/   reloc[7]: knd=0, off=558, siz=4, lab1=.XBAjaAlYD0BG10J.main.__func__, lab2=, loff=0
        .section .debug_info
        .byte 0x44,0x02,0x00,0x00,0x02,0x00
        .4byte .debug_abbrev
        .byte 0x04,0x01,0x00,0x00,0x00,0x00,0x04,0x00
        .byte 0x00,0x00,0x66,0x6f,0x6f,0x2e,0x63,0x00
        .byte 0x0c,0x2f,0x65,0x78,0x70,0x6f,0x72,0x74
        .byte 0x2f,0x68,0x6f,0x6d,0x65,0x2f,0x65,0x72
        .byte 0x72,0x6f,0x72,0x34,0x30,0x34,0x00,0x20
        .byte 0x2f,0x6f,0x70,0x74,0x2f,0x53,0x55,0x4e
        .byte 0x57,0x73,0x70,0x72,0x6f,0x2f,0x70,0x72
        .byte 0x6f,0x64,0x2f,0x62,0x69,0x6e,0x2f,0x63
        .byte 0x63,0x20,0x2d,0x53,0x20,0x2d,0x67,0x20
        .byte 0x20,0x66,0x6f,0x6f,0x2e,0x63,0x20,0x2d
        .byte 0x57,0x30,0x2c,0x2d,0x78,0x70,0x2e,0x58
        .byte 0x41,0x41,0x6a,0x61,0x41,0x6c,0x59,0x44
        .byte 0x30,0x42,0x47,0x31,0x30,0x4a,0x2e,0x00
        .byte 0x58,0x61,0x3b,0x67,0x3b,0x52,0x3d,0x53
        .byte 0x75,0x6e,0x20,0x43,0x20,0x35,0x2e,0x38
        .byte 0x20,0x50,0x61,0x74,0x63,0x68,0x20,0x31
        .byte 0x32,0x31,0x30,0x31,0x36,0x2d,0x30,0x35
        .byte 0x20,0x32,0x30,0x30,0x37,0x2f,0x30,0x31
        .byte 0x2f,0x31,0x30,0x3b,0x47,0x3d,0x2e,0x58
        .byte 0x41,0x41,0x6a,0x61,0x41,0x6c,0x59,0x44
        .byte 0x30,0x42,0x47,0x31,0x30,0x4a,0x2e,0x3b
        .byte 0x62,0x61,0x63,0x6b,0x65,0x6e,0x64,0x3b
        .byte 0x72,0x61,0x77,0x3b,0x63,0x64,0x3b,0x00
        .byte 0x44,0x42,0x47,0x5f,0x47,0x45,0x4e,0x20
        .byte 0x35,0x2e,0x30,0x2e,0x38,0x00
        .4byte .debug_line
        .byte 0x02,0x62,0x6c,0x61,0x68,0x00,0x01,0x02
        .byte 0x01,0x0e
        .4byte blah
        .4byte .L27
        .byte 0x01,0x55,0x9e,0x01,0x00,0x00,0x01,0x36
        .byte 0x01,0x00,0x00,0x03,0x6d,0x79,0x00,0x9e
        .byte 0x01,0x00,0x00,0x01,0x01,0x0f,0x02,0x91
        .byte 0x58,0x04,0x5f,0x5f,0x66,0x75,0x6e,0x63
        .byte 0x5f,0x5f,0x00,0xbc,0x01,0x00,0x00,0x03
        .byte 0x01,0x0e,0x2e,0x58,0x42,0x41,0x6a,0x61
        .byte 0x41,0x6c,0x59,0x44,0x30,0x42,0x47,0x31
        .byte 0x30,0x4a,0x2e,0x62,0x6c,0x61,0x68,0x2e
        .byte 0x5f,0x5f,0x66,0x75,0x6e,0x63,0x5f,0x5f
        .byte 0x00,0x05,0x03
        .4byte .XBAjaAlYD0BG10J.blah.__func__
        .byte 0x00,0x05,0x69,0x6e,0x74,0x00,0x05,0x04
        .byte 0x06,0x24,0x9e,0x01,0x00,0x00,0x07,0x61
        .byte 0x00,0x36,0x01,0x00,0x00,0x02,0x23,0x00
        .byte 0x07,0x62,0x00,0x36,0x01,0x00,0x00,0x02
        .byte 0x23,0x04,0x07,0x63,0x00,0x36,0x01,0x00
        .byte 0x00,0x02,0x23,0x08,0x07,0x64,0x00,0x36
        .byte 0x01,0x00,0x00,0x02,0x23,0x0c,0x07,0x65
        .byte 0x00,0x36,0x01,0x00,0x00,0x02,0x23,0x10
        .byte 0x07,0x66,0x00,0x36,0x01,0x00,0x00,0x02
        .byte 0x23,0x14,0x07,0x67,0x00,0x36,0x01,0x00
        .byte 0x00,0x02,0x23,0x18,0x07,0x68,0x00,0x36
        .byte 0x01,0x00,0x00,0x02,0x23,0x1c,0x07,0x69
        .byte 0x00,0x36,0x01,0x00,0x00,0x02,0x23,0x20
        .byte 0x00,0x08,0x3d,0x01,0x00,0x00,0x66,0x6f
        .byte 0x6f,0x00,0x05,0x63,0x68,0x61,0x72,0x00
        .byte 0x06,0x01,0x09,0xa7,0x01,0x00,0x00,0x05
        .byte 0x6c,0x6f,0x6e,0x67,0x00,0x05,0x04,0x0a
        .byte 0xaf,0x01,0x00,0x00,0x05,0xcd,0x01,0x00
        .byte 0x00,0x0b,0xb4,0x01,0x00,0x00,0x04,0x00
        .byte 0x0c,0x6d,0x61,0x69,0x6e,0x00,0x01,0x02
        .byte 0x02,0x01,0x1e
        .4byte main
        .4byte .L36
        .byte 0x01,0x55,0x36,0x01,0x00,0x00,0x01,0x33
        .byte 0x02,0x00,0x00,0x03,0x62,0x6c,0x61,0x72
        .byte 0x67,0x00,0x9e,0x01,0x00,0x00,0x01,0x01
        .byte 0x1f,0x02,0x91,0x58,0x04,0x5f,0x5f,0x66
        .byte 0x75,0x6e,0x63,0x5f,0x5f,0x00,0x38,0x02
        .byte 0x00,0x00,0x03,0x01,0x1e,0x2e,0x58,0x42
        .byte 0x41,0x6a,0x61,0x41,0x6c,0x59,0x44,0x30
        .byte 0x42,0x47,0x31,0x30,0x4a,0x2e,0x6d,0x61
        .byte 0x69,0x6e,0x2e,0x5f,0x5f,0x66,0x75,0x6e
        .byte 0x63,0x5f,0x5f,0x00,0x05,0x03
        .4byte .XBAjaAlYD0BG10J.main.__func__
        .byte 0x00,0x09,0xa7,0x01,0x00,0x00,0x0d,0x33
        .byte 0x02,0x00,0x00,0x05,0x0b,0xb4,0x01,0x00
        .byte 0x00,0x04,0x00,0x00,0x00,0x00
/  End sdCreateSection
/  Begin sdCreateSection : .debug_line
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
/   reloc[0]: knd=0, off=60, siz=4, lab1=blah, lab2=, loff=0
/   reloc[1]: knd=0, off=67, siz=4, lab1=.L16, lab2=, loff=0
/   reloc[2]: knd=0, off=78, siz=4, lab1=.L17, lab2=, loff=0
/   reloc[3]: knd=0, off=86, siz=4, lab1=.L18, lab2=, loff=0
/   reloc[4]: knd=0, off=94, siz=4, lab1=.L19, lab2=, loff=0
/   reloc[5]: knd=0, off=102, siz=4, lab1=.L20, lab2=, loff=0
/   reloc[6]: knd=0, off=110, siz=4, lab1=.L21, lab2=, loff=0
/   reloc[7]: knd=0, off=118, siz=4, lab1=.L22, lab2=, loff=0
/   reloc[8]: knd=0, off=126, siz=4, lab1=.L23, lab2=, loff=0
/   reloc[9]: knd=0, off=134, siz=4, lab1=.L24, lab2=, loff=0
/   reloc[10]: knd=0, off=142, siz=4, lab1=.L25, lab2=, loff=0
/   reloc[11]: knd=0, off=150, siz=4, lab1=.L26, lab2=, loff=0
/   reloc[12]: knd=0, off=158, siz=4, lab1=main, lab2=, loff=0
/   reloc[13]: knd=0, off=165, siz=4, lab1=.L33, lab2=, loff=0
/   reloc[14]: knd=0, off=175, siz=4, lab1=.L34, lab2=, loff=0
/   reloc[15]: knd=0, off=183, siz=4, lab1=.L35, lab2=, loff=0
        .section .debug_line
        .byte 0xb8,0x00,0x00,0x00,0x02,0x00,0x2f,0x00
        .byte 0x00,0x00,0x01,0x00,0xff,0x04,0x0a,0x00
        .byte 0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x01
        .byte 0x2f,0x65,0x78,0x70,0x6f,0x72,0x74,0x2f
        .byte 0x68,0x6f,0x6d,0x65,0x2f,0x65,0x72,0x72
        .byte 0x6f,0x72,0x34,0x30,0x34,0x00,0x00,0x66
        .byte 0x6f,0x6f,0x2e,0x63,0x00,0x01,0x00,0x00
        .byte 0x00,0x00,0x05,0x02
        .4byte blah
        .byte 0x00,0x05,0x02
        .4byte .L16
        .byte 0x06,0x03,0x0f,0x01,0x00,0x05,0x02
        .4byte .L17
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L18
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L19
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L20
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L21
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L22
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L23
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L24
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L25
        .byte 0x0d,0x00,0x05,0x02
        .4byte .L26
        .byte 0x0c,0x00,0x05,0x02
        .4byte main
        .byte 0x00,0x05,0x02
        .4byte .L33
        .byte 0x03,0x04,0x01,0x00,0x05,0x02
        .4byte .L34
        .byte 0x0c,0x00,0x05,0x02
        .4byte .L35
        .byte 0x0c
/  End sdCreateSection
/  Begin sdCreateSection : .debug_abbrev
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
        .section .debug_abbrev
        .byte 0x01,0x11,0x01,0x11,0x01,0x12,0x01,0x03
        .byte 0x08,0x13,0x0b,0x1b,0x08,0x85,0x44,0x08
        .byte 0x87,0x44,0x08,0x25,0x08,0x10,0x06,0x00
        .byte 0x00,0x02,0x2e,0x01,0x03,0x08,0x3f,0x0c
        .byte 0x17,0x0b,0x3a,0x0b,0x3b,0x0b,0x11,0x01
        .byte 0x12,0x01,0x40,0x0a,0x49,0x13,0x88,0x44
        .byte 0x0b,0x01,0x13,0x00,0x00,0x03,0x34,0x00
        .byte 0x03,0x08,0x49,0x13,0x17,0x0b,0x3a,0x0b
        .byte 0x3b,0x0b,0x02,0x0a,0x00,0x00,0x04,0x34
        .byte 0x00,0x03,0x08,0x49,0x13,0x17,0x0b,0x3a
        .byte 0x0b,0x3b,0x0b,0xa6,0x44,0x08,0x02,0x0a
        .byte 0x00,0x00,0x05,0x24,0x00,0x03,0x08,0x3e
        .byte 0x0b,0x0b,0x0b,0x00,0x00,0x06,0x13,0x01
        .byte 0x0b,0x0b,0x01,0x13,0x00,0x00,0x07,0x0d
        .byte 0x00,0x03,0x08,0x49,0x13,0x38,0x0a,0x00
        .byte 0x00,0x08,0x16,0x00,0x49,0x13,0x03,0x08
        .byte 0x00,0x00,0x09,0x26,0x00,0x49,0x13,0x00
        .byte 0x00,0x0a,0x01,0x01,0x49,0x13,0x0b,0x0b
        .byte 0x01,0x13,0x00,0x00,0x0b,0x21,0x00,0x49
        .byte 0x13,0x2f,0x0b,0x00,0x00,0x0c,0x2e,0x01
        .byte 0x03,0x08,0x3f,0x0c,0x17,0x0b,0x36,0x0b
        .byte 0x3a,0x0b,0x3b,0x0b,0x11,0x01,0x12,0x01
        .byte 0x40,0x0a,0x49,0x13,0x88,0x44,0x0b,0x01
        .byte 0x13,0x00,0x00,0x0d,0x01,0x01,0x49,0x13
        .byte 0x0b,0x0b,0x00,0x00,0x00
/  End sdCreateSection
/  Begin sdCreateSection : .debug_pubnames
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
/   reloc[0]: knd=2, off=6, siz=4, lab1=.debug_info, lab2=, loff=0
        .section .debug_pubnames
        .byte 0x20,0x00,0x00,0x00,0x02,0x00
        .4byte .debug_info
        .byte 0x48,0x02,0x00,0x00,0xd4,0x00,0x00,0x00
        .byte 0x62,0x6c,0x61,0x68,0x00,0xcd,0x01,0x00
        .byte 0x00,0x6d,0x61,0x69,0x6e,0x00,0x00,0x00
        .byte 0x00,0x00
/  End sdCreateSection
/  Begin sdCreateSection : .debug_typenames
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
/   reloc[0]: knd=2, off=6, siz=4, lab1=.debug_info, lab2=, loff=0
        .section .debug_typenames
        .byte 0x1c,0x00,0x00,0x00,0x02,0x00
        .4byte .debug_info
        .byte 0x48,0x02,0x00,0x00,0x3d,0x01,0x00,0x00
        .byte 0x00,0x9e,0x01,0x00,0x00,0x66,0x6f,0x6f
        .byte 0x00,0x00,0x00,0x00,0x00,0x00
/  End sdCreateSection
/  Begin sdCreateSection : .debug_varnames
/  Section Info: link_name/strtab=, entsize=0x1, adralign=0x1, flags=0x0
/  Section Data Blocks:
/   reloc[0]: knd=2, off=6, siz=4, lab1=.debug_info, lab2=, loff=0
        .section .debug_varnames
        .byte 0x28,0x00,0x00,0x00,0x02,0x00
        .4byte .debug_info
        .byte 0x48,0x02,0x00,0x00,0xff,0x00,0x00,0x00
        .byte 0x5f,0x5f,0x66,0x75,0x6e,0x63,0x5f,0x5f
        .byte 0x00,0xfc,0x01,0x00,0x00,0x5f,0x5f,0x66
        .byte 0x75,0x6e,0x63,0x5f,0x5f,0x00,0x00,0x00
        .byte 0x00,0x00
/  End sdCreateSection