From owner-freebsd-questions@FreeBSD.ORG Thu Mar 4 00:16:48 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 812D716A4CE for ; Thu, 4 Mar 2004 00:16:48 -0800 (PST) Received: from fw.farid-hajji.net (fw.farid-hajji.net [213.146.115.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0EF8743D2D for ; Thu, 4 Mar 2004 00:16:48 -0800 (PST) (envelope-from cpghost@cordula.ws) Received: from fw.farid-hajji.net (localhost [127.0.0.1]) by fw.farid-hajji.net (Postfix) with ESMTP id 48B2940893; Thu, 4 Mar 2004 09:16:12 +0100 (CET) From: Cordula's Web To: skuma17@yahoo.com In-reply-to: <20040303181343.0fafed01@bear.bflony.adelphia.net> (message from chungwei Hsiung on Wed, 3 Mar 2004 18:13:43 +0000) X-Mailer: Emacs-21.3.1/FreeBSD-4.9-STABLE References: <20040303181343.0fafed01@bear.bflony.adelphia.net> Message-Id: <20040304081612.48B2940893@fw.farid-hajji.net> Date: Thu, 4 Mar 2004 09:16:12 +0100 (CET) cc: freebsd-questions@freebsd.org Subject: Re: one simple question X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: cpghost@cordula.ws List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Mar 2004 08:16:48 -0000 > I compile a test C file. I notice there are a few lines at the > beginning of the assembly code. I want to know what it means, but > can't figure out one of them. Can anyone tell me what the > following line does please? > > and $0xfffffff0,%esp Hmmm, when I compile the simplest possible C file: ------------------------------- int main (int argc, char *argv[]) { return 0; } -------------------------------- I get this: -------------------------------- .file "test1.c" .version "01.01" gcc2_compiled.: .text .p2align 2,0x90 .globl main .type main,@function main: pushl %ebp movl %esp,%ebp xorl %eax,%eax jmp .L2 .p2align 2,0x90 .L2: leave ret .Lfe1: .size main,.Lfe1-main .ident "GCC: (GNU) c 2.95.4 20020320 [FreeBSD]" -------------------------------- No such thing as: and $0xfffffff0,%esp Are you using gcc 3.3.x? Anyway, this code looks like it would align the stack the stack pointer... > best regards > Chungwei -- Cordula's Web. http://www.cordula.ws/