From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28222 invoked by alias); 12 Feb 2013 06:48:39 -0000 Received: (qmail 27691 invoked by uid 48); 12 Feb 2013 06:47:57 -0000 From: "kcc at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug sanitizer/55309] gcc's address-sanitizer 66% slower than clang's Date: Tue, 12 Feb 2013 06:48:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: sanitizer X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: kcc at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2013-02/txt/msg01128.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55309 --- Comment #32 from Kostya Serebryany 2013-02-12 06:47:56 UTC --- Good news, 0x7fff8000 seems great: t0: orig t1: short offset (0x7fff8000) t2: zero offset + pie t0 t1 t1/t0 t2 t2/t0 t2/t1 ----------------------------------------------------------- 400.perlbench, 1206.00, 1151.00, 0.95, 1192.00, 0.99, 1.04 401.bzip2, 884.00, 842.00, 0.95, 821.00, 0.93, 0.98 403.gcc, 738.00, 722.00, 0.98, 716.00, 0.97, 0.99 429.mcf, 609.00, 596.00, 0.98, 586.00, 0.96, 0.98 445.gobmk, 844.00, 804.00, 0.95, 809.00, 0.96, 1.01 456.hmmer, 1304.00, 1223.00, 0.94, 1235.00, 0.95, 1.01 458.sjeng, 916.00, 868.00, 0.95, 897.00, 0.98, 1.03 462.libquantum, 547.00, 535.00, 0.98, 534.00, 0.98, 1.00 464.h264ref, 1328.00, 1313.00, 0.99, 1265.00, 0.95, 0.96 471.omnetpp, 628.00, 601.00, 0.96, 596.00, 0.95, 0.99 473.astar, 665.00, 646.00, 0.97, 657.00, 0.99, 1.02 483.xalancbmk, 480.00, 449.00, 0.94, 445.00, 0.93, 0.99 433.milc, 709.00, 655.00, 0.92, 656.00, 0.93, 1.00 444.namd, 636.00, 594.00, 0.93, 593.00, 0.93, 1.00 447.dealII, 649.00, 615.00, 0.95, 637.00, 0.98, 1.04 450.soplex, 390.00, 374.00, 0.96, 370.00, 0.95, 0.99 453.povray, 452.00, 402.00, 0.89, 421.00, 0.93, 1.05 470.lbm, 389.00, 378.00, 0.97, 387.00, 0.99, 1.02 482.sphinx3, 980.00, 930.00, 0.95, 926.00, 0.94, 1.00 So, 0x7fff8000 seems to be a win, even compared to pie+zerobase. We'll do some more testing a flip the switch in clang. There is another suggestion (from dvyukov) to use -Wl,-Ttext-segment=0x40000000 together with zerobase (pie is not required) which is worth investigating.