From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21018 invoked by alias); 19 Aug 2009 11:57:14 -0000 Received: (qmail 20984 invoked by uid 48); 19 Aug 2009 11:57:02 -0000 Date: Wed, 19 Aug 2009 11:57:00 -0000 Message-ID: <20090819115702.20983.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug other/19815] Documentation change - GCC Internals MODES_TIEABLE_P In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "abnikant dot singh at atmel dot com" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2009-08/txt/msg01574.txt.bz2 ------- Comment #1 from abnikant dot singh at atmel dot com 2009-08-19 11:57 ------- "If HARD_REGNO_MODE_OK (r, mode1) and HARD_REGNO_MODE_OK (r, mode2) are always the same for any r, then MODES_TIEABLE_P (mode1, mode2) should be nonzero. If they differ for any r, you should define this macro to return zero unless some other mechanism ensures the accessibility of the value in a narrower mode." In case of avr: if (mode1 != mode2) then HARD_REGNO_MODE_OK (r, mode1) != HARD_REGNO_MODE_OK (r, mode2) and hence MODES_TIEABLE_P (mode1, mode2) should be 0. [ But this is true only if we do not have other mechanism to access the value in narrower mode ] -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19815