From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13137 invoked by alias); 28 Jun 2011 17:08:51 -0000 Mailing-List: contact archer-help@sourceware.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Subscribe: List-Id: Received: (qmail 13126 invoked by uid 22791); 28 Jun 2011 17:08:49 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org MIME-Version: 1.0 In-Reply-To: <20110628122135.GB3005@redhat.com> References: <20110628122135.GB3005@redhat.com> Date: Tue, 28 Jun 2011 17:08:00 -0000 Message-ID: Subject: Re: C++ draft From: Matt Rice To: archer@sourceware.org, Yao Qi Content-Type: multipart/mixed; boundary=20cf303bfad4cc464204a6c8b70d X-SW-Source: 2011-q2/txt/msg00033.txt.bz2 --20cf303bfad4cc464204a6c8b70d Content-Type: text/plain; charset=ISO-8859-1 Content-length: 2274 On Tue, Jun 28, 2011 at 5:21 AM, Gary Benson wrote: > The resulting executable is slightly larger (6562 bytes from 6433). note that these numbers are equivalent to the hello-c++1 from the attached foo.sh shell script, which brings in a bunch of shared libraries. I tried some other sources/linking scenerios to get an idea of the footprint. (below is the output). of concern is that of the *-tdep.c files: amd64, i386, ppc, rs6000, and spu, (at least) use TRY_CATCH or throw_* and that at least arm uses VEC I'm not sure how far outside of *-tdep.c this stuff would propagate. here is the output: File: hello-c 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] File: hello-c++1 0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6] 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] File: hello-c++2 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] File: hello-c++3 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] File: hello-exceptions 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2] File: hello-exceptions+vector 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2] File: hello-vector 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2] 6.3K ./hello-c 6.5K ./hello-c++1 6.3K ./hello-c++2 6.4K ./hello-c++3 106K ./hello-exceptions 166K ./hello-exceptions+vector 156K ./hello-vector stripped 4.2K ./hello-c 4.3K ./hello-c++1 4.2K ./hello-c++2 4.3K ./hello-c++3 86K ./hello-exceptions 122K ./hello-exceptions+vector 118K ./hello-vector --20cf303bfad4cc464204a6c8b70d Content-Type: application/x-sh; name="foo.sh" Content-Disposition: attachment; filename="foo.sh" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gph3ixdt0 Content-length: 2050 IyEvYmluL3NoCmNhdCA+aGVsbG8uY2MgPDxFT0YKI2luY2x1ZGUgPHN0ZGlv Lmg+CgogaW50CiAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICB7 CiAgICBwdXRzICgiSGVsbG8gd29ybGQiKTsKICAgIHJldHVybiAwOwogIH0K RU9GCgpjYXQgPmhlbGxvMi5jYyA8PEVPRgojaW5jbHVkZSA8c3RkaW8uaD4K I2luY2x1ZGUgPHZlY3Rvcj4KCiBpbnQKICBtYWluIChpbnQgYXJnYywgY2hh ciAqYXJndltdKQogIHsKICAgIHN0ZDo6dmVjdG9yPGNvbnN0IGNoYXIgKj4g Zm9vOwogICAgaW50IGk7CgogICAgZm9vLnB1c2hfYmFjaygiSGVsbG8iKTsK ICAgIGZvby5wdXNoX2JhY2soIndvcmxkIik7CiAgICBmb3IgKGkgPSAwOyBp IDwgMjsgaSsrKQogICAgICBwcmludGYoIiVzICIsIGZvb1tpXSk7CiAgICBw cmludGYoIlxuIik7CiAgICByZXR1cm4gMDsKICB9CkVPRgoKY2F0ID5oZWxs bzMuY2MgPDxFT0YKI2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDx2ZWN0 b3I+CgogaW50CiAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICB7 CiAgICBzdGQ6OnZlY3Rvcjxjb25zdCBjaGFyICo+IGZvbzsKICAgIGludCBp OwoKICAgIGZvby5wdXNoX2JhY2soIkhlbGxvIik7CiAgICBmb28ucHVzaF9i YWNrKCJ3b3JsZCIpOwogICAgdHJ5CiAgICAgIHsKICAgICAgICB0aHJvdyAy OwogICAgICB9CiAgICBjYXRjaCAoaW50IGUpCiAgICAgIHsKICAgICAgICBm b3IgKGkgPSAwOyBpIDwgMjsgaSsrKQogICAgICAgICAgcHJpbnRmKCIlcyAi LCBmb29baV0pOwogICAgICAgIHByaW50ZigiXG4iKTsKICAgICAgfQogICAg cmV0dXJuIDA7CiAgfQpFT0YKCmNhdCA+aGVsbG80LmNjIDw8RU9GCiNpbmNs dWRlIDxzdGRpby5oPgoKIGludAogIG1haW4gKGludCBhcmdjLCBjaGFyICph cmd2W10pCiAgewogICAgdHJ5CiAgICAgIHsKICAgICAgICB0aHJvdyAyOwog ICAgICB9CiAgICBjYXRjaCAoaW50IGUpCiAgICAgIHsKCXB1dHMgKCJIZWxs byB3b3JsZCIpOwogICAgICB9CiAgICByZXR1cm4gMDsKICB9CkVPRgoKZ2Nj IC14YyAtbyBoZWxsby1jIGhlbGxvLmNjCmcrKyAtbyBoZWxsby1jKysxIGhl bGxvLmNjCmcrKyAtbyBoZWxsby1jKysyIGhlbGxvLmNjIC1XbCwtLWFzLW5l ZWRlZApnKysgLXN0YXRpYy1saWJnY2MgLXN0YXRpYy1saWJzdGRjKysgLW8g aGVsbG8tYysrMyBoZWxsby5jYwpnKysgLXN0YXRpYy1saWJnY2MgLXN0YXRp Yy1saWJzdGRjKysgLW8gaGVsbG8tdmVjdG9yIGhlbGxvMi5jYwpnKysgLXN0 YXRpYy1saWJnY2MgLXN0YXRpYy1saWJzdGRjKysgLW8gaGVsbG8tZXhjZXB0 aW9ucyt2ZWN0b3IgaGVsbG8zLmNjCmcrKyAtc3RhdGljLWxpYmdjYyAtc3Rh dGljLWxpYnN0ZGMrKyAtbyBoZWxsby1leGNlcHRpb25zIGhlbGxvNC5jYwoK cmVhZGVsZiAtZCBoZWxsby0qIHwgZWdyZXAgIihORUVERUR8RmlsZTopIgpk dSAtYiAtLWh1IC4vaGVsbG8tKgpzdHJpcCBoZWxsby0qCmVjaG8gInN0cmlw cGVkIgpkdSAtYiAtLWh1IC4vaGVsbG8tKgo= --20cf303bfad4cc464204a6c8b70d--