diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2008-11-23 09:58:48 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2008-11-23 09:58:48 +0000 |
commit | a3b7632e61981a730a8883a13f36f19be75647f1 (patch) | |
tree | 07ec4da268fb7e7f9aa2ddc20c5379e7f5982003 /docs | |
parent | 1f0c609def5cff6b7bc16ddeefafb1654b11cb71 (diff) | |
download | libcss-a3b7632e61981a730a8883a13f36f19be75647f1.tar.gz libcss-a3b7632e61981a730a8883a13f36f19be75647f1.tar.bz2 |
All numerical values are represented in 22:10 fixed point.
svn path=/trunk/libcss/; revision=5762
Diffstat (limited to 'docs')
-rw-r--r-- | docs/Bytecode | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/docs/Bytecode b/docs/Bytecode index e7bb2fa..0b5ec74 100644 --- a/docs/Bytecode +++ b/docs/Bytecode @@ -23,21 +23,16 @@ Parameters are opcode-specific. Each parameter must begin on a 4 byte boundary. Datatype storage ---------------- -8 and 16 bit integers are stored as 32bit values. - -32 bit integers are stored in their natural format. - -Floats are stored in their natural format. - -Integers wider than 32 bits are not supported. -Doubles are not supported. +All numeric values are stored in a 32bit wide field. This field contains +a fixed point value with 22 bits assigned to the integer part and 10 bits +assigned to the fractional part. Strings are stored as <pointer,length> pairs, as per css_string. Pointer's width is the native width of a pointer on the platform. Length's width is the native width of a size_t on the platform. CSS dimensions are stored as two 32bit values: <length, units>. -Length is a 32bit integer and unit is as follows: +Length is a 32bit numeric value (as described above) and unit is as follows: bit 8 clear => length unit bits 9-31: MBZ |