From: Vladimir Kondratiev <vladimir.kondratiev@intel.com>
To: "Kevin P. Fleming" <kpfleming@backtobasicsmgmt.com>
Cc: Mark Hahn <hahn@physics.mcmaster.ca>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Martin Mares <mj@ucw.cz>
Subject: Re: PCI Express support for 2.4 kernel
Date: Mon, 15 Dec 2003 18:38:54 +0200 [thread overview]
Message-ID: <3FDDE39E.1050300@intel.com> (raw)
In-Reply-To: <3FDDDC68.80209@backtobasicsmgmt.com>
Kevin,
there is no black magic. Compilation goes .c -> .s -> .o; if assembly
have nothing added, object have not as well.
To be sure, I did the following:
[tmp]$ gcc -c t.c; objdump -xs t.o
t.o: file format elf32-i386
t.o
architecture: i386, flags 0x00000010:
HAS_SYMS
start address 0x00000000
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00000000 00000000 00000000 00000034 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00000000 00000000 00000000 00000034 2**2
CONTENTS, ALLOC, LOAD, DATA
2 .bss 00000008 00000000 00000000 00000034 2**2
ALLOC
3 .note.GNU-stack 00000000 00000000 00000000 00000034 2**0
CONTENTS, READONLY
4 .comment 00000033 00000000 00000000 00000034 2**0
CONTENTS, READONLY
SYMBOL TABLE:
00000000 l df *ABS* 00000000 t.c
00000000 l d .text 00000000
00000000 l d .data 00000000
00000000 l d .bss 00000000
00000000 l O .bss 00000004 a1
00000004 l O .bss 00000004 a2
00000000 l d .note.GNU-stack 00000000
00000000 l d .comment 00000000
Contents of section .text:
Contents of section .data:
Contents of section .note.GNU-stack:
Contents of section .comment:
0000 00474343 3a202847 4e552920 332e332e .GCC: (GNU) 3.3.
0010 31203230 30333038 31312028 52656420 1 20030811 (Red
0020 48617420 4c696e75 7820332e 332e312d Hat Linux 3.3.1-
0030 312900 1).
Kevin P. Fleming wrote:
> Vladimir Kondratiev wrote:
>
>> To illustrate zero cost, I did the following test:
>> [tmp]$ cat t.c; gcc -S t.c; cat t.s
>> static int a1=0;
>> static int a2;
>> /* EOF */
>>
>> .file "t.c"
>> .local a1
>> .comm a1,4,4
>> .local a2
>> .comm a2,4,4
>> .section .note.GNU-stack,"",@progbits
>> .ident "GCC: (GNU) 3.3.1 20030811 (Red Hat Linux 3.3.1-1)"
>>
>> As you can see, assembly code is identical, compiler did this trivial
>> optimization for me.
>
>
> You've missed the point, though. Initializing a static variable to
> zero causes space to be consumed in the resulting object file (not
> instruction code to be generated). This is wasted space, because if
> you don't initialize to zero the variable will be allocated out of
> space that is _automatically_ zeroed for you. This reduces the size of
> the kernel image by not filling it with unnecessary zeroes.
>
next prev parent reply other threads:[~2003-12-15 16:39 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.44.0312150917170.32061-100000@coffee.psychology.mcmaster.ca>
2003-12-15 15:52 ` PCI Express support for 2.4 kernel Vladimir Kondratiev
2003-12-15 16:08 ` Kevin P. Fleming
2003-12-15 16:38 ` Vladimir Kondratiev [this message]
2003-12-15 16:55 ` Richard B. Johnson
2003-12-15 17:08 ` Tomas Szepe
2003-12-15 18:03 ` Richard B. Johnson
2003-12-15 18:15 ` Tomas Szepe
2003-12-15 18:35 ` Richard B. Johnson
2003-12-15 18:43 ` Keith Owens
2003-12-15 18:45 ` Tomas Szepe
2003-12-15 17:24 ` Vladimir Kondratiev
2003-12-15 17:22 ` Randy.Dunlap
2003-12-15 18:16 ` Greg KH
2003-12-15 18:20 ` Richard B. Johnson
2003-12-15 17:09 ` Keith Owens
2003-12-15 17:38 ` Tomas Szepe
2003-12-15 18:16 ` Keith Owens
2003-12-15 18:23 ` Tomas Szepe
[not found] <12InT-wQ-5@gated-at.bofh.it>
[not found] ` <135Nw-5gv-3@gated-at.bofh.it>
[not found] ` <137wc-q1-23@gated-at.bofh.it>
2003-12-15 21:56 ` Andi Kleen
2003-12-15 22:48 ` Vladimir Kondratiev
2003-12-15 23:06 ` Andi Kleen
2003-12-15 23:14 ` Greg KH
2003-12-15 20:08 Nakajima, Jun
[not found] <12KJ6-4F2-13@gated-at.bofh.it>
[not found] ` <12Lvu-5X5-5@gated-at.bofh.it>
[not found] ` <12XQ2-7Vs-9@gated-at.bofh.it>
2003-12-15 10:17 ` Andi Kleen
[not found] ` <12YsA-nt-1@gated-at.bofh.it>
[not found] ` <130kQ-3A0-13@gated-at.bofh.it>
[not found] ` <130Xy-4Ia-3@gated-at.bofh.it>
[not found] ` <131Ac-5Qy-3@gated-at.bofh.it>
[not found] ` <137cD-8eg-9@gated-at.bofh.it>
[not found] ` <13kD2-1kF-11@gated-at.bofh.it>
2003-12-16 17:44 ` Andi Kleen
[not found] ` <13r1S-3FB-11@gated-at.bofh.it>
[not found] ` <13vyg-43O-7@gated-at.bofh.it>
2003-12-16 22:18 ` Andi Kleen
[not found] ` <13qIi-31G-1@gated-at.bofh.it>
[not found] ` <13DvZ-2RY-9@gated-at.bofh.it>
[not found] ` <13DFw-3a8-9@gated-at.bofh.it>
[not found] ` <13DPq-3s4-7@gated-at.bofh.it>
[not found] ` <13Fem-6iy-7@gated-at.bofh.it>
[not found] ` <13SY1-35z-19@gated-at.bofh.it>
2003-12-17 23:22 ` Andi Kleen
2003-12-17 23:38 ` Alan Cox
[not found] ` <12XQc-7Vs-29@gated-at.bofh.it>
[not found] ` <12Z5u-1tG-11@gated-at.bofh.it>
2003-12-15 14:58 ` Andi Kleen
2003-12-15 15:40 ` Vladimir Kondratiev
[not found] <3FDCA569.5070006@pobox.com>
2003-12-15 4:47 ` Pete Zaitcev
-- strict thread matches above, loose matches on Subject: below --
2003-12-14 20:00 Vladimir Kondratiev
2003-12-14 20:46 ` Jeff Garzik
2003-12-15 10:01 ` Vladimir Kondratiev
2003-12-15 10:31 ` Gabriel Paubert
2003-12-15 12:44 ` Vladimir Kondratiev
2003-12-15 13:15 ` Arjan van de Ven
2003-12-15 13:58 ` Vladimir Kondratiev
2003-12-15 14:31 ` Arjan van de Ven
2003-12-15 14:44 ` Brian Gerst
2003-12-15 18:40 ` Greg KH
2003-12-15 19:23 ` Alan Cox
2003-12-15 20:00 ` Linus Torvalds
2003-12-16 10:20 ` Vladimir Kondratiev
2003-12-16 16:47 ` Linus Torvalds
2003-12-17 6:30 ` Vladimir Kondratiev
2003-12-17 6:46 ` Linus Torvalds
2003-12-17 6:55 ` Jeff Garzik
2003-12-17 7:24 ` Vladimir Kondratiev
2003-12-17 16:17 ` Linus Torvalds
2003-12-17 8:22 ` Arjan van de Ven
2003-12-17 10:35 ` Martin Mares
2003-12-17 23:06 ` Alan Cox
2003-12-17 10:08 ` Geert Uytterhoeven
2003-12-17 15:54 ` Linus Torvalds
2003-12-17 16:14 ` Geert Uytterhoeven
2003-12-17 17:44 ` Dan Hopper
2003-12-17 18:14 ` Vladimir Kondratiev
2003-12-17 21:44 ` Martin Mares
2003-12-16 17:10 ` Jeff Garzik
2003-12-16 17:48 ` Arjan van de Ven
2003-12-16 17:55 ` Jeff Garzik
2003-12-16 22:39 ` Vladimir Kondratiev
2003-12-17 0:12 ` Richard B. Johnson
2003-12-16 21:59 ` Vladimir Kondratiev
2003-12-16 17:45 ` Greg KH
2003-12-16 22:14 ` Vladimir Kondratiev
2003-12-17 10:05 ` Geert Uytterhoeven
2003-12-15 15:57 ` Vladimir Kondratiev
2003-12-15 10:42 ` Martin Mares
2003-12-15 10:07 ` Greg KH
2003-12-15 11:20 ` Vladimir Kondratiev
2003-12-14 17:28 Vladimir Kondratiev
2003-12-15 7:48 ` Christoph Hellwig
2003-12-15 18:26 ` Linus Torvalds
2003-12-15 20:03 ` Jeff Garzik
2003-12-15 22:00 ` Linus Torvalds
2003-12-16 4:53 ` Jeff Garzik
2003-12-15 20:21 ` Vladimir Kondratiev
2003-12-15 20:36 ` Jeff Garzik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3FDDE39E.1050300@intel.com \
--to=vladimir.kondratiev@intel.com \
--cc=hahn@physics.mcmaster.ca \
--cc=kpfleming@backtobasicsmgmt.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mj@ucw.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.