Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:42698 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 50938 invoked from network); 19 Jan 2009 09:12:50 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Jan 2009 09:12:50 -0000 Authentication-Results: pb1.pair.com header.from=stas@zend.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=stas@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 63.205.162.116 as permitted sender) X-PHP-List-Original-Sender: stas@zend.com X-Host-Fingerprint: 63.205.162.116 us-gw1.zend.com Windows 2000 SP4, XP SP1 Received: from [63.205.162.116] ([63.205.162.116:30886] helo=us-gw1.zend.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 5B/10-50097-11444794 for ; Mon, 19 Jan 2009 04:12:50 -0500 Received: from [192.168.17.98] ([192.168.17.98]) by us-gw1.zend.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 19 Jan 2009 01:13:40 -0800 Message-ID: <4974440E.3060402@zend.com> Date: Mon, 19 Jan 2009 01:12:46 -0800 Organization: Zend Technologies User-Agent: Thunderbird 2.0.0.19 (Windows/20081209) MIME-Version: 1.0 To: Marcus Boerger CC: Timm Friebe , internals@lists.php.net References: <155749706.20090117211737@marcus-boerger.de> In-Reply-To: <155749706.20090117211737@marcus-boerger.de> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 19 Jan 2009 09:13:40.0763 (UTC) FILETIME=[3834E6B0:01C97A16] Subject: Re: [PHP-DEV] Method call improvements From: stas@zend.com (Stanislav Malyshev) Hi! > Aren't we able to bind these at least partially to the function call > opcode, in case we know they are constant? If all is constsnt we could > even store the whole lookup in the opcode. Well you'd have to convince > Zend to do that because os far they have always been against this > approach. Err, I'm not sure how can you store in opcode something you don't know - since opcode may be generated well before class or method exists, not speaking about the object of which you know nothing at the time of opcode generation? Same opcode could call entirely different methods of different classes. Am I missing somehing? > Also the zend_class_enty lookup in [1c] imo is completely useless. If > the zval object would store the class entry and the class entry had a > pointer to the handlers then we would save another costly lookup and > simply follow a pointer instead. having only one handler table per class would make objects less flexible. -- Stanislav Malyshev, Zend Software Architect stas@zend.com http://www.zend.com/ (408)253-8829 MSN: stas@zend.com