From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jim Wilson Date: Wed, 21 Mar 2001 19:40:55 +0000 Subject: Re: [Linux-ia64] Unwind problem for __attribute__ noreturn Message-Id: List-Id: References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-ia64@vger.kernel.org Consider this case mutex p6, p7 { .mib (p6) instruction that changes the unwind state (p7) call that does not return } unwind directives to declare new unwind state If p7 is true, and we try to unwind inside the call, then the return address will point to the modified unwind state which is incorrect, because we did not execute the p6 instruction. To make this work, we have to subtract one from the return address to get an address before the new unwind state is established. I posit that this example is more realistic and more useful than the example which modifies b0 to optimize away a branch. Jim