From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) by sourceware.org (Postfix) with ESMTPS id 0C80A3858C74 for ; Fri, 22 Dec 2023 04:45:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0C80A3858C74 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 0C80A3858C74 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::631 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703220343; cv=none; b=r5x73chwNDkZp9/TE0gXqTEsoOJbXYBphKq05d4qF/xMO2nmTtmegsBzuVUsHf1aF7FYEpCcrRG8u7peIR1cgZ1d4aSTMaspu4f4WSubtcds7r9+d4JL3AOy3GjD7RNcuwduNT83kj6Wa7oZi2Aag6lm8fVpuJKBel4HQBQ1ixw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703220343; c=relaxed/simple; bh=MAjWXsJ9DW+yQv1DIJTleUGH2N+T0jx0gibrZqohhYw=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=G8SZAz+b3Fl1H60qGKyHJWGa6NGAmlmeY0K5yzbnSUbJyEZwfKQVfID4jkj1lak00IuTRheomU7zxhLWQF3hvPuU9k1mN40erCLFgBwaT21axtXPtpzzRp/P32hxQQ1dK3+sBUxrM2Wxr+PBjyh2eKo2P6AiSC/2VZKLPXPSHZo= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-1d3ea5cc137so12445515ad.0 for ; Thu, 21 Dec 2023 20:45:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703220341; x=1703825141; darn=gcc.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=WESmH+VJ94v15q3MvANYZKE40OVExfgQkfIbZlLVkQs=; b=d1PmaEFci6UJExZ3OLnmZhrDZR4zo+BYlwctzwGgk7VGdi4h3RM7mHlmMtdhLVISjF BHL9Plj03veeKZtr1AGMq8nIiZgTbrJ/HuLtnTKawtI6LpZysKsRot+/TAIXCczykz8z lzQSoVU0bRlrvHLijgBtR/p43TvopLFMZIfoPVKGrb3JTpQWOMisWHH8gRHpVXQSV1J+ TZ9zGFUBALQzdAnIOAZAGTX3Al6Uiqzw7MTnllt6dEsEgQM+UgP6/WmzUpOWy8w+VS8H PLZSEwtM+Dwote15mJDxkyn7Jxtq/m2pqATf7n53VIgLa7Qu/Vd7V1y/wTHmoNnTWk1e wpCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703220341; x=1703825141; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=WESmH+VJ94v15q3MvANYZKE40OVExfgQkfIbZlLVkQs=; b=GWxKeN64VrZCeAk22M70v/xCAshosga7yNN1oBRNH2sXfYA1VJD6QRRWzdngAsI7Kz Q3FTT+8RifW2Ka2tIKEISdACBY03PeFN3tJLa2poQIFUs0lHpzsmqRCPJqmLzXJNEdvr x28it+E9d/sUeCQZiI+NETjG+r1ashIzMAJcS5BwBdIITyiaLgu2V0x/8KvUbGoW+rUk rS5NxGmnbIcWRT27sgk70tHbBUmV6Et+ZyGEONXfV/42u+jKUOXV6GbiShGktTgf1Akh 1QKqKAG4d4Wu/9SFRt5iUMC5kVk5kkm7xrXOybWpnOSWI8USe6DvW5QAKjx7c3y8d/al 8MlA== X-Gm-Message-State: AOJu0YxVmypb7IUJoX6mYmfKW2cQdhOzwkkJlmT5zeNfdjgTZ675k5mO qVVbAqElX9DuYaJ5D9UvD4eKbW3vw5zFlKYvsvDc/+rMtWnROA== X-Google-Smtp-Source: AGHT+IGIMDtRGxzmZNWKcS6zYOGPHz/qcql1DjyFM0lpblHvD28vNW9olQ/zyEah3sh5RNIWjF038bthv4M8HxuMNaY= X-Received: by 2002:a17:902:900b:b0:1d3:c3f0:463a with SMTP id a11-20020a170902900b00b001d3c3f0463amr682716plp.137.1703220340799; Thu, 21 Dec 2023 20:45:40 -0800 (PST) MIME-Version: 1.0 References: <20230719041639.2967597-1-yunqiang.su@cipunited.com> <2289802.ElGaqSPkdT@arcturus> In-Reply-To: From: YunQiang Su Date: Fri, 22 Dec 2023 12:45:29 +0800 Message-ID: Subject: Re: [PATCH v2] Store_bit_field_1: Use SUBREG instead of REG if possible To: Richard Biener Cc: Eric Botcazou , gcc-patches@gcc.gnu.org, YunQiang Su , pinskia@gmail.com, jeffreyalaw@gmail.com, ian@airs.com Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: > > Note I think Andrews comment#7 in the PR is spot-on then, the issue > isn't the bitfield inserts but the compare where combine elides > the sign_extend in favor of a subreg. That's likely some wrongdoing > in simplify-rtx in the context of WORD_REGISTER_OPERATIONS. > Yes. There are 2 problems here. Any one of them can make this problem. 1) jump_insn eats sign_extend (and truncate) in /* Simplify X, an IF_THEN_ELSE expression. Return the new expression. */ static rtx simplify_if_then_else (rtx x) 2) MIPS claims sign_extend to be deleted. (define_insn_and_split "extendsidi2" [(set (match_operand:DI 0 "register_operand" "=d,l,d") (sign_extend:DI (match_operand:SI 1 "nonimmediate_operand" "0,0,m")))] "TARGET_64BIT" "@ # # lw\t%0,%1" "&& reload_completed && register_operand (operands[1], VOIDmode)" [(const_int 0)] { emit_note (NOTE_INSN_DELETED); DONE; } [(set_attr "move_type" "move,move,load") (set_attr "mode" "DI")]) -- YunQiang Su