From patchwork Fri Nov 9 14:15:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Wilco Dijkstra X-Patchwork-Id: 995562 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-489521-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="exs09RpH"; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="rDp4Il5H"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42s2JT1456z9sCX for ; Sat, 10 Nov 2018 01:16:24 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:references:in-reply-to :content-type:content-transfer-encoding:mime-version; q=dns; s= default; b=D5Hqjev/KERfi74wDbpCt6ORu5zY9PhHjaWvfmZvQK97j4IgsuAZk 5oPBdgL3y8Hg5XNxPzltc3XaKu/dJPjbjdlyBiPDEzzqzLOBv+NKmFaaUL4rKpxT vjFshhZq8uSyzMWnmVaW97Kuq9imkmkr+33PvZTykCDQm19WXhyA7s= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:references:in-reply-to :content-type:content-transfer-encoding:mime-version; s=default; bh=2puzA+7lJlLQGT/9/9FLDzLZYpA=; b=exs09RpHHkDaZ+dJdAFG40BQlpwn tN8Hh3s/yvxnliXc2nnAVOjAGCQzd7LTceTzJKvKJnmGpFh8CE62sJica5J2cvEl d97lwg5rEwolf3fSfFZaKfC6y1lCJ+fE7xS0G2zdxxS2IwMg3zb4eUtFsnNmmOup 9h0OAKGSujqQT5s= Received: (qmail 35397 invoked by alias); 9 Nov 2018 14:16:18 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 34455 invoked by uid 89); 9 Nov 2018 14:16:05 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:1488 X-HELO: EUR01-HE1-obe.outbound.protection.outlook.com Received: from mail-he1eur01on0054.outbound.protection.outlook.com (HELO EUR01-HE1-obe.outbound.protection.outlook.com) (104.47.0.54) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 09 Nov 2018 14:16:04 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vFbvHFNaneK4ZuMmLfVz3bkPQrHSdjjSQscbDcdxyjs=; b=rDp4Il5HsNNgBfoEgH3yfdzL0LprQdCsUHUn0GwG8+BrjKpXwgqrSdSlvHT/SUqtO8BvY8OUNW82L5zK7iobLgYjtboOI7K3DS3+tk3hv7SYPduFoWrxeT6Y/lmViTZZ4xUvfaNHyZ2hEu5sWBcN6LH+lvXX4lfw9me1Hp+PzOg= Received: from DB5PR08MB1030.eurprd08.prod.outlook.com (10.166.14.15) by DB5PR08MB0791.eurprd08.prod.outlook.com (10.164.42.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1294.21; Fri, 9 Nov 2018 14:15:59 +0000 Received: from DB5PR08MB1030.eurprd08.prod.outlook.com ([fe80::f5c9:8ef6:9b28:8caa]) by DB5PR08MB1030.eurprd08.prod.outlook.com ([fe80::f5c9:8ef6:9b28:8caa%2]) with mapi id 15.20.1294.034; Fri, 9 Nov 2018 14:15:59 +0000 From: Wilco Dijkstra To: GCC Patches CC: nd Subject: [PATCH][AArch64] Set SLOW_BYTE_ACCESS Date: Fri, 9 Nov 2018 14:15:59 +0000 Message-ID: References: In-Reply-To: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Wilco.Dijkstra@arm.com; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) MIME-Version: 1.0 Contrary to all documentation, SLOW_BYTE_ACCESS simply means accessing bitfields by their declared type, which results in better codegeneration on practically any target. I'm thinking we should completely remove all trace of SLOW_BYTE_ACCESS from GCC as it's confusing and useless. OK for commit until we get rid of it? ChangeLog: 2017-11-17  Wilco Dijkstra      gcc/         * config/aarch64/aarch64.h (SLOW_BYTE_ACCESS): Set to 1. diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h index 056110afb228fb919e837c04aa5e5552a4868ec3..d8f4d129a02fb89eb00d256aba8c4764d6026078 100644 --- a/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h @@ -769,14 +769,9 @@ typedef struct     if given data not on the nominal alignment.  */  #define STRICT_ALIGNMENT                TARGET_STRICT_ALIGN   -/* Define this macro to be non-zero if accessing less than a word of -   memory is no faster than accessing a word of memory, i.e., if such -   accesses require more than one instruction or if there is no -   difference in cost. -   Although there's no difference in instruction count or cycles, -   in AArch64 we don't want to expand to a sub-word to a 64-bit access -   if we don't have to, for power-saving reasons.  */ -#define SLOW_BYTE_ACCESS               0 +/* Contrary to all documentation, this enables wide bitfield accesses, +   which results in better code when accessing multiple bitfields.  */ +#define SLOW_BYTE_ACCESS               1    #define NO_FUNCTION_CSE 1