Great. I will try to reproduce asm.js bug. Btw, if you build
roll-a-ball project in Unity, then output will be in Unity format
(also js, but with Unity loader, Unity staff). You can find emscripten
output in Project/Library/webgl_cache/linkresult_asm/ folder.

2017-08-22 23:15 GMT+07:00 arnab choudhury <[email protected]>:
> Hi caiiycuk
>
> I'll have an update here shortly. I would love to be able to reproduce the
> non-asm.js bug since we have extensive tests for this at Tableau. I'm trying
> out the roll-a-ball project right now, will get back shortly.
>
> Regards,
> Arnab
>
> On Tuesday, August 22, 2017 at 3:07:44 AM UTC-7, caiiiycuk wrote:
>>
>> As I see using SFE breaks asm.js validity? On my another project sfe
>> produce js less on 500Kb (from 6.5Mb), but FF says:
>> TypeError: asm.js type error: double is not a subtype of intish
>>
>> 2017-08-22 11:33 GMT+07:00 Александр Гурьянов <[email protected]>:
>> > Roll a ball project:
>> > https://www.assetstore.unity3d.com/en/#!/content/77198
>> >
>> > 2017-08-22 11:32 GMT+07:00 Александр Гурьянов <[email protected]>:
>> >> Hi. I tried to use SFE on Roll-a-ball demo project, and get same
>> >> results. Unity uses --separate-asm flag to build asm.js. Resulting js
>> >> looks like:
>> >>
>> >> Module["asm"] = (function(global,env,buffer) {
>> >> "use asm";var a=new global.Int8Array(buffer);var b=new
>> >> global.Int16Array(buffer);...
>> >>
>> >> I tried to remove wrapping function (Module["asm"] =
>> >> (function(global,env,buffer) { ... }), and code looks like:
>> >> "use asm";var a=new global.Int8Array(buffer);var b=new
>> >> global.Int16Array(buffer);...
>> >>
>> >> When I run SFE I have another error:
>> >>
>> >> /home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:5701
>> >>             throw e;
>> >>             ^
>> >> Error: Line 25: Illegal return statement
>> >>     at constructError
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:2406:21)
>> >>     at createError
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:2425:17)
>> >>     at tolerateError
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:2460:17)
>> >>     at parseReturnStatement
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:4533:13)
>> >>     at parseStatement
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:4780:24)
>> >>     at parseStatementListItem
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:3988:16)
>> >>     at parseScriptBody
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:5489:25)
>> >>     at parseProgram
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:5505:16)
>> >>     at Object.parse
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/node_modules/esprima/esprima.js:5689:23)
>> >>     at SimilarFunctionEliminator.srcToAst
>> >>
>> >> (/home/caiiiycuk/sdk/Similar-Function-Elimination/src/similar_function_eliminator.js:35:20)
>> >>
>> >>
>> >> Maybe I doing something wrong. Can you try? Resulting js is here
>> >> (build.asm.js):
>> >>
>> >>
>> >> https://drive.google.com/file/d/0B28AXjYMDNZscDFlZTdWMGMzQkU/view?usp=sharing
>> >>
>> >> Thank you!
>> >>
>> >> 2017-08-22 1:35 GMT+07:00 Александр Гурьянов <[email protected]>:
>> >>> I think that error can be reporudced on any Unity project, I will
>> >>> check and back) Btw, thanks for nice stuff!
>> >>>
>> >>> 2017-08-22 1:27 GMT+07:00 arnab choudhury <[email protected]>:
>> >>>> Thanks Alon :).
>> >>>>
>> >>>> Caiiycuk, is the codebase you are trying to run SFE on available
>> >>>> publicly?
>> >>>> Can you post the github link here if so? If not, take a look at the
>> >>>> generated JS on which you are going to run SFE on. Make sure that
>> >>>> there is a
>> >>>> top level global variable called asm. If the asm.js is wrapped, then
>> >>>> you
>> >>>> might have to save off the asm.js (the part of the code that contains
>> >>>> a top
>> >>>> level variable called asm) to a separate file and try running SFE on
>> >>>> that to
>> >>>> see the potential size reduction.
>> >>>>
>> >>>> Regards,
>> >>>> Arnab
>> >>>>
>> >>>> On Monday, August 21, 2017 at 10:47:22 AM UTC-7, Alon Zakai wrote:
>> >>>>>
>> >>>>> Very interesting stuff here! :)
>> >>>>>
>> >>>>> I opened this issue for implementation in Binaryen:
>> >>>>> https://github.com/WebAssembly/binaryen/issues/1142
>> >>>>>
>> >>>>> On Fri, Aug 18, 2017 at 8:24 AM, arnab choudhury
>> >>>>> <[email protected]>
>> >>>>> wrote:
>> >>>>>>
>> >>>>>> Hello Emscripten-Discuss
>> >>>>>>
>> >>>>>> I just wanted to bring folks' attention to a new post-build
>> >>>>>> optimization
>> >>>>>> pass for Emscripten generated asm.js called Similar Function
>> >>>>>> Elimination
>> >>>>>> (SFE) that Tableau recently open sourced. I discussed with Alon,
>> >>>>>> and our
>> >>>>>> thinking is that we will be adding this pass to Binaryen's web
>> >>>>>> assembly
>> >>>>>> generator. Given that everyone is moving to Web Assembly, we are
>> >>>>>> thinking we
>> >>>>>> may not add this pass back to Emscripten. However, that being said,
>> >>>>>> the
>> >>>>>> Emscripten community should feel free to use Similar Function
>> >>>>>> Elimination on
>> >>>>>> Emscripten generated asm.js if you need the additional size
>> >>>>>> reduction.
>> >>>>>>
>> >>>>>> https://github.com/achoudhury85/Similar-Function-Elimination
>> >>>>>>
>> >>>>>> At Tableau, we have observed up to 20% code size reduction when
>> >>>>>> using SFE
>> >>>>>> on template heavy codebases.
>> >>>>>>
>> >>>>>> Regards,
>> >>>>>> Arnab
>> >>>>>>
>> >>>>>> --
>> >>>>>> 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/d/optout.
>> >>>>>
>> >>>>>
>> >>>> --
>> >>>> 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/d/optout.
>
> --
> 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/d/optout.

-- 
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/d/optout.

Reply via email to