From owner-freebsd-hackers Sat Mar 13 14:28:40 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from etinc.com (et-gw.etinc.com [207.252.1.2]) by hub.freebsd.org (Postfix) with ESMTP id 1FB8014CEF for ; Sat, 13 Mar 1999 14:28:37 -0800 (PST) (envelope-from dennis@etinc.com) Received: from dbsys (dbsys.etinc.com [207.252.1.18]) by etinc.com (8.8.8/8.6.9) with SMTP id RAA19255 for ; Sat, 13 Mar 1999 17:32:54 -0500 (EST) Message-Id: <199903132232.RAA19255@etinc.com> X-Sender: dennis@etinc.com X-Mailer: QUALCOMM Windows Eudora Pro Version 4.0 Date: Sat, 13 Mar 1999 17:41:04 -0500 To: hackers@freebsd.org From: Dennis Subject: 'C' language question Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I have a memory mapped controller that requires that all of its register reads and writes be 32 bits....the follow code: *reg |= 0x80000000; generates a byte OR (ORB instruction) which trashes the register with gcc 2.9.2....a stupid "optimization" that happens to be wrong in this case. is there a declaration that will force the compiler to generate a 32bit OR (ORL instruction) on this? Dennis To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message