![]() |
|< 1 2 >| | ![]() |
15 Einträge, 2 Seiten |
char var[512];
char *var = new char[512]
delete var
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Script started on Sat Mar 25 13:54:39 2006
~ $ cat >foo.c
char *x = "foo";
char y[8];
^D
~ $ cat >bar.c
extern char *x;
extern char y[8];
^D
~ $ gcc -Wall -O3 -g0 -S foo.c
~ $ gcc -Wall -O3 -g0 -S bar.c
~ $ cat foo.S
.section __TEXT,__text,regular,pure_instructions
.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32
.machine ppc
.globl _x
.cstring
.align 2
LC0:
.ascii "foo\0"
.data
.align 2
_x:
.long LC0
.comm _y,8
.subsections_via_symbols
~ $ cat bar.S
.section __TEXT,__text,regular,pure_instructions
.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32
.machine ppc
.subsections_via_symbols
~ $ exit
Script done on Sat Mar 25 13:56:19 2006
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
TITLE foo.c
.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT ENDS
_DATA SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA ENDS
CONST SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST ENDS
_BSS SEGMENT DWORD USE32 PUBLIC 'BSS'
_BSS ENDS
_TLS SEGMENT DWORD USE32 PUBLIC 'TLS'
_TLS ENDS
FLAT GROUP _DATA, CONST, _BSS
ASSUME CS: FLAT, DS: FLAT, SS: FLAT
endif
PUBLIC _x
_DATA SEGMENT
COMM _y:BYTE:08H
_x DD FLAT:$SG463
$SG463 DB 'foo', 00H
_DATA ENDS
END
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
TITLE bar.c
.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT ENDS
_DATA SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA ENDS
CONST SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST ENDS
_BSS SEGMENT DWORD USE32 PUBLIC 'BSS'
_BSS ENDS
_TLS SEGMENT DWORD USE32 PUBLIC 'TLS'
_TLS ENDS
FLAT GROUP _DATA, CONST, _BSS
ASSUME CS: FLAT, DS: FLAT, SS: FLAT
endif
END
![]() |
|< 1 2 >| | ![]() |
15 Einträge, 2 Seiten |