From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5451 invoked by alias); 22 Dec 2009 11:33:47 -0000 Received: (qmail 5442 invoked by uid 22791); 22 Dec 2009 11:33:47 -0000 X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_SORBS_WEB,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-gx0-f221.google.com (HELO mail-gx0-f221.google.com) (209.85.217.221) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 22 Dec 2009 11:33:43 +0000 Received: by gxk21 with SMTP id 21so894031gxk.10 for ; Tue, 22 Dec 2009 03:33:41 -0800 (PST) Received: by 10.150.37.18 with SMTP id k18mr13157654ybk.178.1261481621505; Tue, 22 Dec 2009 03:33:41 -0800 (PST) Received: from yakj.usersys.redhat.com (93-34-192-166.ip51.fastwebnet.it [93.34.192.166]) by mx.google.com with ESMTPS id 6sm2350323ywc.39.2009.12.22.03.33.38 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 22 Dec 2009 03:33:40 -0800 (PST) Message-ID: <4B30AE8E.8060805@gnu.org> Date: Tue, 22 Dec 2009 11:33:00 -0000 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091209 Fedora/3.0-4.fc12 Lightning/1.0pre Thunderbird/3.0 MIME-Version: 1.0 To: Richard Guenther CC: David Daney , Jamie Lokier , "gcc@gcc.gnu.org" , =?ISO-8859-1?Q?Uwe_Kleine-K=F6nig?= , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] ARM: Convert BUG() to use unreachable() References: <1260266138-17684-1-git-send-email-u.kleine-koenig@pengutronix.de> <20091217150120.GD24967@shareable.org> <4B2A65C6.7080009@caviumnetworks.com> <84fc9c000912170917y4b2772d0n47bb4dabc74b91ef@mail.gmail.com> In-Reply-To: <84fc9c000912170917y4b2772d0n47bb4dabc74b91ef@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-12/txt/msg00302.txt.bz2 On 12/17/2009 06:17 PM, Richard Guenther wrote: > It shouldn't as *(int *)0 = 0; might trap. But if you want to be sure > use > __builtin_trap (); > instead for the whole sequence (the unreachable is implied then). > GCC choses a size-optimal trap representation for your target then. Agree that it shouldn't but just to be sure I'd use *(volatile int *)0 = 0; unreachable (); Paolo