SAFE_HEAP detects accesses through null pointers, right?  Since otherwise
null pointer reads and writes are "valid" in asm.js, SAFE_HEAP is useful
for catching things early.  (Maybe it should even throw on any accesses
below 4096 and above 2 billion or something)

Regal's code size may be a function of its completeness, but it's worth
investigating.  I'd even be willing to pay the code size if I could get it
to work reliably, but even with -O2 I was running into issues where
emscripten was generating excessive numbers of local variables in functions
that looked pretty simple.

I think I may have filed a bug on that, but I haven't had time to dig more
deeply since before the holidays.



On Tue, Jan 7, 2014 at 11:01 AM, Alon Zakai <[email protected]> wrote:

> Thanks for the input. One question, what are you using SAFE_HEAP for
> specifically?
>
> Agreed about GL emulation in principle, although regal had some
> limitations as well last I checked, as well as size concerns. Would be good
> to gather data on the two options to see which wins on speed,
> compatibility, size, etc.
>
> - Alon
>
>
>
> On Tue, Jan 7, 2014 at 10:37 AM, Chad Austin <[email protected]> wrote:
>
>> Wow, great!
>>
>> Our priorities are:
>>
>> 1) C++ exceptions
>> 2) FORCE_ALIGNMENT, SAFE_HEAP etc.
>> 3) SIMD vector types
>>
>> Regarding GL emulation, I would recommend deleting all of library_gl.js
>> and instead focusing on getting Regal to work reliably.  The Regal project
>> is far more likely to have a complete and usable GL emulation layer.  The
>> built-in emscripten emulation layer doesn't work for anything but the
>> simplest use cases.
>>
>>
>>
>> On Mon, Jan 6, 2014 at 5:35 PM, Alon Zakai <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> Work is mostly done on the LLVM backend (codename 'fastcomp') intended
>>> to replace the core of emscripten's compiler. This is a proper C++ backend
>>> integrated with LLVM, and as such is far faster than the original one which
>>> was written in JS. Details about the new compiler are at
>>>
>>> https://github.com/kripken/emscripten/wiki/LLVM-Backend
>>>
>>> Not all functionality is complete yet in the new compiler, see the list
>>> of limitations in that link - stuff like setjmp and C++ exceptions are the
>>> main missing things. We'll implement those soon I hope, but I'm sending
>>> this email out to see which of the missing features is most important, so I
>>> know how to prioritize.
>>>
>>> Instructions to build and use the new compiler are in that link as well.
>>> Please test when you get a chance, and report any bugs you see (the new
>>> compiler passes the emscripten test suite - the parts not using features
>>> not present yet - as well as fuzzing, so it seems fairly robust, however
>>> like any new compiler bugs are very possible).
>>>
>>> - Alon
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "emscripten-discuss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>
>>
>>
>> --
>> Chad Austin
>> Technical Director, IMVU
>> http://www.imvu.com/members/Chad/
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "emscripten-discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "emscripten-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>



-- 
Chad Austin
Technical Director, IMVU
http://www.imvu.com/members/Chad/

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to