Re: Zero-fill right shift.
| From: | Andrea Faulds | Date: | Tue, 03 Feb 2015 14:36:15 +0000 |
| Subject: | Re: Zero-fill right shift. | ||
| References: | 1 2 3 4 5 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-81714@lists.php.net to get a copy of this message | ||
On 3 Feb 2015, at 14:15, Leigh <leight@gmail.com> wrote:
>
> On 3 February 2015 at 13:54, Andrea Faulds <ajf@ajf.me> wrote:
>> Hi Leigh,
>>
>>> On 3 Feb 2015, at 13:51, Leigh <leight@gmail.com> wrote:
>>> No idea. Personally I'm opposed to the bigints implementation because
>>> of the implicit type auto-promotion.
>>
>> Huh? There’s no type promotion from a userland perspective, it’s entirely an
>> implementation detail. Yes, some integers may be IS_LONG and others may be IS_BIGINT internally, but
>> that’s only for Zend Engine 3 (might change in future), the boundary point varies by platform, and
>> crucially, you can’t distinguish them from userland.
>
> Aside from the breaks to some binary ops
I don’t know where you got that idea. The binary ops are consistent - they aren’t constrained by
register size like in previous PHP versions, but they’re still completely consistent.
> and once you hit the
> promotion breakpoint working with that integer is a lot slower.
It’s slower, yes, but that hardly matters. If people care so much about performance, why use PHP?
--
Andrea Faulds
http://ajf.me/