From owner-cvs-all Sun Oct 20 15:50:41 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E200137B401; Sun, 20 Oct 2002 15:50:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A477443E77; Sun, 20 Oct 2002 15:50:39 -0700 (PDT) (envelope-from robert@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id g9KMoEmV087811; Sun, 20 Oct 2002 15:50:14 -0700 (PDT) (envelope-from robert@repoman.freebsd.org) Received: (from robert@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id g9KMoEH9087809; Sun, 20 Oct 2002 15:50:14 -0700 (PDT) Message-Id: <200210202250.g9KMoEH9087809@repoman.freebsd.org> From: Robert Drehmel Date: Sun, 20 Oct 2002 15:50:14 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/syscons sctermvar.h X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG robert 2002/10/20 15:50:14 PDT Modified files: sys/dev/syscons sctermvar.h Log: Do not try to work around ``poor (un)sign extension code'' creation by GCC-2.6.3. Casting pointers to unsigned char to volatile pointers to unsigned char seemed to produce better results on the ia32 architecture with old versions of GCC. The current FreeBSD system compiler GCC-3.2.1 emits better sign extension code for non-volatile variables: volatile char c; int i = c; is compiled to: ... movb -1(%ebp), %al movbsl %al, %eax movl %eax, -8(%ebp) ... char c; int i = c; is compiled to: ... movbsl -1(%ebp), %eax movl %eax, -8(%ebp) ... The same holds for zero-extension of dereferenced pointers to volatile unsigned char. When compiled on alpha or sparc64, the code produced for the two examples above does not differ. Revision Changes Path 1.4 +2 -12 src/sys/dev/syscons/sctermvar.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message