From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [IPv6:2607:f8b0:4864:20::62d]) by sourceware.org (Postfix) with ESMTPS id D5B1D386100A for ; Thu, 24 Jun 2021 19:17:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D5B1D386100A Received: by mail-pl1-x62d.google.com with SMTP id y13so3461144plc.8 for ; Thu, 24 Jun 2021 12:17:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=AfHc7WbZ6l426Qb6TF3bhu2HmTJUtAEShG0BsAUAQCU=; b=LUOrdl4z5POM6NZXHRNnHHJIV63h3jybq4ztYSssi8/e7HGntiIgTNqYKtIoV7Q5wB H000UjywCS2RTVamLb7qqIk9J4JLDUnE9XehVPzKYrth1CyBD5jCfjBgdlLk+k12RSO+ GOQVH4ovpnUF6/ZPUEwO2LgsQ3qD8AEruDqpHJyhagpXaHZv974dcexB2U0n/sHqcaNQ b5Jc5mz85/zXf/pFJ8vVidH1aEf3hwMUxZkPhjzLSj3mUuzADB16dFeX8EfMs+Nu2Km9 SaE6HY4sWW5RnAv0UEesGkJB0Dmno49cbuzXU7kYLjdDEly8Q/238FTg7GjCx2jMdlGF 1tfA== X-Gm-Message-State: AOAM530GV+xyHctFL7PGEH/96bhja9szCMpC5S4TMVNqIhWlwCbINXAL yn0J2DsJStPFscXtUt8mRkY= X-Google-Smtp-Source: ABdhPJyfvMhGWHKGohVGcbj0V9Xsxms4ytR19Tzy6DXAJoRCIaB/hqNAftHCgeq8XsgED+i+J9Iwyg== X-Received: by 2002:a17:90a:4490:: with SMTP id t16mr16930428pjg.183.1624562260876; Thu, 24 Jun 2021 12:17:40 -0700 (PDT) Received: from [192.168.1.39] (65-130-1-109.slkc.qwest.net. [65.130.1.109]) by smtp.gmail.com with ESMTPSA id q3sm3525717pfj.89.2021.06.24.12.17.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 24 Jun 2021 12:17:40 -0700 (PDT) Subject: Re: [PATCH] aix: handle 64bit inodes for include directories To: "CHIGOT, CLEMENT" , David Malcolm Cc: "gcc-patches@gcc.gnu.org" , David Edelsohn References: From: Jeff Law Message-ID: Date: Thu, 24 Jun 2021 13:17:36 -0600 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jun 2021 19:17:50 -0000 On 6/23/2021 12:53 AM, CHIGOT, CLEMENT via Gcc-patches wrote: > Hi David, > > Did you have a chance to take look at this patch ? > > Thanks, > Clément > > >> +DavidMalcolm >> >> Can you review this patch when you have a moment? >> >> Thanks, David >> >> On Mon, May 17, 2021 at 3:05 PM David Edelsohn wrote: >>> The aix.h change is okay with me, but you need to get approval for the >>> incpath.c and cpplib.h parts of the patch from the appropriate >>> maintainers. >>> >>> Thanks, David >>> >>> On Mon, May 17, 2021 at 7:44 AM CHIGOT, CLEMENT wrote: >>>> On AIX, stat will store inodes in 32bit even when using LARGE_FILES. >>>> If the inode is larger, it will return -1 in st_ino. >>>> Thus, in incpath.c when comparing include directories, if several >>>> of them have 64bit inodes, they will be considered as duplicated. >>>> >>>> gcc/ChangeLog: >>>> 2021-05-06 Clément Chigot >>>> >>>> * configure.ac: Check sizeof ino_t and dev_t. >>>> * config.in: Regenerate. >>>> * configure: Regenerate. >>>> * config/rs6000/aix.h (HOST_STAT_FOR_64BIT_INODES): New define. >>>> * incpath.c (HOST_STAT_FOR_64BIT_INODES): New define. >>>> (remove_duplicates): Use it. >>>> >>>> libcpp/ChangeLog: >>>> 2021-05-06 Clément Chigot >>>> >>>> * configure.ac: Check sizeof ino_t and dev_t. >>>> * config.in: Regenerate. >>>> * configure: Regenerate. >>>> * include/cpplib.h (INO_T_CPP): Change for AIX. >>>> (DEV_T_CPP): New macro. >>>> (struct cpp_dir): Use it. So my worry here is this is really a host property -- ie, this is behavior of where GCC runs, not the target for which GCC is generating code. That implies that the change in aix.h is wrong.  aix.h is for the target, not the host -- you don't want to define something like HOST_STAT_FOR_64BIT_INODES there. You'd want to be triggering this behavior via a host fragment, x-aix, or better yet via an autoconf test. jeff