You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

35 lines
1.3 KiB

--- !ditz.rubyforge.org,2008-03-06/issue
title: add a lightweight native pointer type to enable (non-compliant) built-in size optimization
desc: |-
For 32-bit platforms the 8-byte tagged type can point to a C function directly,
and has 16 bits free to provide additional metadata, such as function argument
count or 'length' property.
These lightweight function values could be used to optimize the memory usage of
built-ins: there are about 180 built-ins now, each taking ~90-100 bytes, for a
total of 16-20 kB. A lightweight function pointer would make the functions
strictly non-compliant (as they might not have the exactly correct properties
and new properties could not be added) but would drop "hello world" footprint
by almost 20 kB.
A lightweight function values might also be useful for many C programmers,
as often it's not that important what properties functions have.
type: :task
component: duk
release:
reporter: Sami Vaarala <sami.vaarala@iki.fi>
status: :unstarted
disposition:
creation_time: 2014-03-27 22:08:51.790272 Z
references: []
id: a22c35bd0659c31a83b047811fea0053a7e463c1
log_events:
- - 2014-03-27 22:08:52.062161 Z
- Sami Vaarala <sami.vaarala@iki.fi>
- created
- ""
- - 2014-03-27 22:23:15.575242 Z
- Sami Vaarala <sami.vaarala@iki.fi>
- unassigned from release v0.11
- ""