From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2974 invoked by alias); 22 Jan 2005 12:14:45 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 2845 invoked by uid 48); 22 Jan 2005 12:14:32 -0000 Date: Sat, 22 Jan 2005 12:14:00 -0000 Message-ID: <20050122121432.2844.qmail@sourceware.org> From: "steven at gcc dot gnu dot org" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20030616070732.11203.spigel@olvs.miee.ru> References: <20030616070732.11203.spigel@olvs.miee.ru> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug inline-asm/11203] source doesn't compile with -O0 but they compile with -O3 X-Bugzilla-Reason: CC X-SW-Source: 2005-01/txt/msg03164.txt.bz2 List-Id: ------- Additional Comments From steven at gcc dot gnu dot org 2005-01-22 12:14 ------- Martin, you should realize that this problem *cannot* be solved. Yes, there will perhaps be a time when this particular test case compiles, though I think that is unlikely. But anyway, then there will be other cases that fail. The reason is dead simple: register allocation is NP-complete, so it is even *theoretically* not possible to write register allocators that always find a coloring. That means any register allocator will always fail on some very constrained asm input. And you cannot allow it to run indefinitely until a coloring is found, because then you've turned the graph coloring problem into the halting problem because you can't prove that a coloring exists and that the register allocator algorithm will terminate. So really it doesn't matter at all whether or not your specific inline asm compiles or not. When yours does, someone else's will fail. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11203