From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4068 invoked by alias); 15 Oct 2004 22:28:53 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 4057 invoked from network); 15 Oct 2004 22:28:52 -0000 Received: from unknown (HELO mail.cs.umass.edu) (128.119.243.168) by sourceware.org with SMTP; 15 Oct 2004 22:28:52 -0000 Received: from localhost (IDENT:lRvnsjacOee+yRs9urgjtpsYVdKCJIyO@loki.cs.umass.edu [128.119.243.168]) by mail.cs.umass.edu (8.12.11/8.12.5) with ESMTP id i9FMSplw022706 for ; Fri, 15 Oct 2004 18:28:51 -0400 Date: Fri, 15 Oct 2004 23:59:00 -0000 Message-Id: <20041015.182844.91752452.kazu@cs.umass.edu> To: gcc@gcc.gnu.org Subject: Do we ever have a compound assignment like a = b = c? From: Kazu Hirata Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SW-Source: 2004-10/txt/msg00639.txt.bz2 Hi, Assignment-related expanders like expand_assignment, store_expr, and store_field can return rtx for the value being assgined to. For example, expand_assignment (b, c) would return the rtx of b. Now, do we ever have an assignment embedded in something like a = (b = c) or foo (a = b)? I hear that we gimplify even at -O0. Even after Temporary Expression Replacement, I don't see any assignment embedded in something. If that's the case, I am thinking about removing the support for returning rtx. A lot of code would go away. Kazu Hirata