From owner-freebsd-hackers@FreeBSD.ORG Wed Jul 27 14:11:42 2005 Return-Path: X-Original-To: hackers@freebsd.org Delivered-To: freebsd-hackers@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 401BF16A420 for ; Wed, 27 Jul 2005 14:11:42 +0000 (GMT) (envelope-from NKoch@demig.de) Received: from server.absolute-media.de (server.absolute-media.de [213.239.231.9]) by mx1.FreeBSD.org (Postfix) with ESMTP id B112C43D46 for ; Wed, 27 Jul 2005 14:11:41 +0000 (GMT) (envelope-from NKoch@demig.de) Received: from localhost (unknown [127.0.0.1]) by server.absolute-media.de (Postfix) with ESMTP id DDE548C7F9; Wed, 27 Jul 2005 16:11:38 +0200 (CEST) Received: from server.absolute-media.de ([127.0.0.1]) by localhost (server [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 19582-01; Wed, 27 Jul 2005 16:11:34 +0200 (CEST) Received: from firewall.demig (p50839235.dip0.t-ipconnect.de [80.131.146.53]) by server.absolute-media.de (Postfix) with ESMTP id 17D4D8C34D; Wed, 27 Jul 2005 16:11:33 +0200 (CEST) Received: from ws-ew-3 (ws-ew-3.w2kdemig [192.168.1.72]) by firewall.demig (8.13.4/8.13.1) with SMTP id j6RE9pSp064469; Wed, 27 Jul 2005 16:09:51 +0200 (CEST) (envelope-from NKoch@demig.de) From: "Norbert Koch" To: "Rink Springer" , "Ludvig Strigeus" Date: Wed, 27 Jul 2005 16:09:51 +0200 Message-ID: <000701c592b4$dadcd000$4801a8c0@ws-ew-3.W2KDEMIG> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook 8.5, Build 4.71.2173.0 In-Reply-To: <20050727134432.GA10142@stack.nl> X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2120.0 Importance: Normal X-Virus-Scanned: by amavisd-new X-Virus-Scanned: by amavisd-new at absolute-media.de Cc: hackers@freebsd.org, ed@fxq.nl Subject: RE: Problem with pic16l_setled X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Jul 2005 14:11:42 -0000 > You see, in C, I call the function like this (for example): > > void pic16l_setled(unsigned int val); > pic16l_setled (0x1234); > > And it gets assembled to: > > pushl $0x1234 > call pic16l_setled > > But it should be assembled to: > > pushl $0x1234 > call pic16l_setled > add $4,%esp /* ditch the parameter */ Usually gcc collects stack cleanups. See -fno-defer-pop. Norbert