From owner-freebsd-hackers@freebsd.org Wed Nov 20 03:09:54 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id F13B01C5CE4 for ; Wed, 20 Nov 2019 03:09:54 +0000 (UTC) (envelope-from dewaynegeraghty@gmail.com) Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47Hnjt0zFDz4Fg2 for ; Wed, 20 Nov 2019 03:09:53 +0000 (UTC) (envelope-from dewaynegeraghty@gmail.com) Received: by mail-wm1-x333.google.com with SMTP id b11so5419786wmb.5 for ; Tue, 19 Nov 2019 19:09:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=c0ukWM16TTb5R2BdtL+iev+glC94vu1ioMS7kZPF108=; b=SB/5NopNCpwnF4YJX/51TwbMBYzAQ46F6DISzsEZM4TND94CnPi0fR3fT2TvtzFWKK I8771rsyw9vc4duE8GdAZLTdUiE8CcPbv36TUDYFeZYXWyr8n1JLrK8AnzWZ1YBDhPGt JCHO9vMREpoRsgqKbXZ2yTOxq9yGDUs0We71ZCcUWrFC0saPB4iqqjzqO1Md6ca/JBnB DXoixb19ouGzV4efk4BD8ks7wjvSe4fWwnAJ68uoZCaT0kNOoP18UuTlzGCVNug+prw8 5w++CaDw95R27D79g3x3bBmZKvUhtLgEMH2bOvKAkVUnN+ZmTXP/E5Zwb4kxf3S6OHnk 4SmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=c0ukWM16TTb5R2BdtL+iev+glC94vu1ioMS7kZPF108=; b=an5UAFkSwFZUEuFXGQL/lvxTmpEukvC3vQYfExHhZ1+uhR+hZ3wUZH8pgTbMQBYyjb W6VxXZFwkPWulQnpz7mWBKaA5GVW5rliVSvazRmi+YBtc2L9C9ughd/TIL0gjUlu+2Tl UL5pa34pzteRhJIyD+4pRPgfthqQhFTuOqUYXCYO30aqsbhTthQY/4c5xDUG8sl74KLk H/uVQeMGR5uYmA/FVRLAHZEYOKJae3hWquns1QI7DumTjfvDHjtCwsYbgQk801zy+/tT tPqqYOd6knLWVaNR6I+qmfWiFKRtlBIT6U7ZLomaNI7izgcXAhp1K5tZ2mO6UV+IDuXz uGZQ== X-Gm-Message-State: APjAAAWuVCWSFpjRIPjUR1/guofAQlK3n//ln1qwWGRsZfpr9aEV9XRu Vq/+nApKrBK+DyNvO7tsq5EOIi4+sgakuc48kFHvrXjaTMw= X-Google-Smtp-Source: APXvYqwd2MBLawpwH/ib4u41WxJvvkGg51/eudYhoqnlrLoAmycMNK7x/XoRRoPiVnk0SjW/5iRtJ9HXTHaSE3Y0ryU= X-Received: by 2002:a05:600c:2103:: with SMTP id u3mr588150wml.150.1574219391760; Tue, 19 Nov 2019 19:09:51 -0800 (PST) MIME-Version: 1.0 From: Dewayne Geraghty Date: Wed, 20 Nov 2019 14:09:24 +1100 Message-ID: Subject: Executable size difference between clang and gcc9 To: freebsd-hackers@freebsd.org X-Rspamd-Queue-Id: 47Hnjt0zFDz4Fg2 X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=SB/5NopN; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of dewaynegeraghty@gmail.com designates 2a00:1450:4864:20::333 as permitted sender) smtp.mailfrom=dewaynegeraghty@gmail.com X-Spamd-Result: default: False [-2.00 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; FREEMAIL_FROM(0.00)[gmail.com]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; TO_DN_NONE(0.00)[]; IP_SCORE_FREEMAIL(0.00)[]; URI_COUNT_ODD(1.00)[3]; RCPT_COUNT_ONE(0.00)[1]; IP_SCORE(0.00)[ip: (-8.62), ipnet: 2a00:1450::/32(-2.72), asn: 15169(-1.97), country: US(-0.05)]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; RCVD_IN_DNSWL_NONE(0.00)[3.3.3.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Nov 2019 03:09:55 -0000 I noticed the executable a size difference between clang 8.0.1 and gcc 9.2.0 of a simple test code, build on FreeBSD12.1S (r353671M) below.: Differences in object code seem reasonable: # clang -O2 -march=haswell -flto -c "qdate.c" -rw-r----- 1 root wheel 3896 8 Nov 12:59 qdate.o # gcc9 -O2 -march=haswell -flto -c "qdate.c" ; ls -l qdate.o a.out -rw-r----- 1 root wheel 5256 8 Nov 13:00 qdate.o But the executable sizes? # clang -O2 -march=haswell -flto "qdate.c" ; ls -l qdate.o a.out -rwxr-x--- 1 root wheel 16360 8 Nov 13:10 a.out # gcc9 -O2 -march=haswell -flto "qdate.c" ;ls -l qdate.o a.out -rwxr-x--- 1 root wheel 8736 8 Nov 13:09 a.out Is this size variation expected, and what is contributing to this difference? The executeables are the same size with/without lto; and both link to /lib/libc a.out: libc.so.7 => /lib/libc.so.7 (0x800647000) */* Sample code*/* *#include #include int main (int argc, char **argv) { struct timeval tv; gettimeofday(&tv, NULL); if (argc > 1) printf("%ld.%ld\n",tv.tv_sec,tv.tv_usec); else printf("%ld\n",tv.tv_sec);}* The verbose compile/link command is available at http://www.heuristicsystems.com/FreeBSD-compiler/ contains: clang.lis gcc9.lis qdate.c PS who said anything placing malware on the end of executables, at the compilation step? Really I'm not paranoid... :)