From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15636 invoked by alias); 25 May 2012 12:11:40 -0000 Received: (qmail 15620 invoked by uid 22791); 25 May 2012 12:11:38 -0000 X-SWARE-Spam-Status: No, hits=1.5 required=5.0 tests=AWL,BAYES_50,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_YE,RDNS_NONE X-Spam-Check-By: sourceware.org Received: from Unknown (HELO mailout-de.gmx.net) (213.165.64.23) by sourceware.org (qpsmtpd/0.43rc1) with SMTP; Fri, 25 May 2012 12:11:24 +0000 Received: (qmail 16824 invoked by uid 0); 25 May 2012 12:11:16 -0000 Received: from 83.171.138.120 by www073.gmx.net with HTTP; Fri, 25 May 2012 14:11:14 +0200 (CEST) Content-Type: text/plain; charset="utf-8" Date: Fri, 25 May 2012 12:11:00 -0000 From: "Setjem Setjem" In-Reply-To: <1337773963.10856.ezmlm@gcc.gnu.org> Message-ID: <20120525121114.192480@gmx.net> MIME-Version: 1.0 References: <1337773963.10856.ezmlm@gcc.gnu.org> Subject: How to define special requirements for an address operand? To: gcc-help@gcc.gnu.org Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org X-SW-Source: 2012-05/txt/msg00201.txt.bz2 Hi, I'am trying to write a backend for my own target system. The target has two pointer registers but only one of them can be used to read data from memory and the other one to write data into memory. How could i tell the compiler to use the correct register for the respective operation? I have tried to copy the address into the correct register in the define_expand "mov", but this seems to confuse the compiler and not working always. I also tried to describe it in the target hook TARGET_LEGITIMATE_ADDRESS_P, but there i have no idea how to find out which operation is performed (write/read). Thanks in advance. best regards, Andreas -- NEU: FreePhone 3-fach-Flat mit kostenlosem Smartphone! Jetzt informieren: http://mobile.1und1.de/?ac=OM.PW.PW003K20328T7073a