Thanks for the tips. I was able to get around the issues that I was
encountering when using just the latest build.
However, I still encounter the Optimizer stack overflow crash. Here is a
partial call stack:
msvcr120.dll!6544a5d6()
[Frames below may be incorrect and/or missing, no symbols loaded for
msvcr120.dll]
msvcr120.dll!654605db()
msvcr120.dll!654b9bf0()
msvcr120.dll!654b9c8d()
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::Frag::Frag(char *
src=0x0cdffdc9) Line 231 + 0xe bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40448) Line 290 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseExpression(cashew::Parser<Ref,ValueBuilder>::ExpressionElement
initial={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40448) Line
726 C++
> optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x1cf4e3dc) Line 301 + 0x28 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseExpression(cashew::Parser<Ref,ValueBuilder>::ExpressionElement
initial={...}, char * & src=0x20202020, const char * seps=0x00b40448) Line
726 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x00000002, const char * seps=0x00b40448) Line 304 + 0x37 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterParen(char * &
src=0x0cdffdc9) Line 590 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 304 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseExpression(cashew::Parser<Ref,ValueBuilder>::ExpressionElement
initial={...}, char * & src=0x20202020, const char * seps=0x00b40478) Line
726 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterIdent(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x1cf4e37c) Line
539 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 300 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x0cdffdc9, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseIf(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
420 + 0x27 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
334 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x0cdffdc9, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseDo(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
434 + 0x26 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
335 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x00000002, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseIf(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
420 + 0x27 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
334 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x0cdffdc9, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseDo(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
434 + 0x26 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
335 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
Prior to that the following stack is repeated. (probably infinitely
although depending on how the parser is written it could just be a very
large stack)
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x00000002, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseIf(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
420 + 0x27 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
334 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBlock(char * &
src=0x0cdffdc9, Ref block={...}, const char * seps=0x00b40478,
cashew::IString keywordSep1={...}, cashew::IString keywordSep2={...}) Line
806 + 0x33 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseBracketedBlock(char
* & src=0x0cdffdc9, Ref block={...}) Line 819 C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseDo(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
434 + 0x26 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterKeyword(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
335 + 0x18 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 293 + 0x13 bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseAfterIdent(cashew::Parser<Ref,ValueBuilder>::Frag
& frag={...}, char * & src=0x0cdffdc9, const char * seps=0x00b40478) Line
533 + 0xf bytes C++
optimizer.exe!cashew::Parser<Ref,ValueBuilder>::parseElement(char * &
src=0x0cdffdc9, const char * seps=0x00b40478) Line 300 + 0x18 bytes C++
I will investigate to see if I can get any other information tomorrow.
Thanks,
David
On Tuesday, July 7, 2015 at 1:18:20 PM UTC-7, Alon Zakai wrote:
>
> That looks like a different error. It is caused by the repos not being in
> sync - you need latest incoming on all 3 repos, see
>
>
> http://kripken.github.io/emscripten-site/docs/building_from_source/building_fastcomp_manually_from_source.html#branches
>
> On Tue, Jul 7, 2015 at 12:55 PM, <[email protected] <javascript:>> wrote:
>
>> I still get the same error using Emscripten in the incoming branch and
>> can't even run the samples without getting errors. This is my output trying
>> to run test_hello_world:
>>
>> E:\Program Files\Emscripten\emscripten\incoming>python tests/runner.py
>> test_hell
>> o_world
>> test_hello_world (test_core.default) ... (checking sanity from test
>> runner)
>> INFO root: (Emscripten: Running sanity checks)
>> FAIL
>>
>> ======================================================================
>> FAIL: test_hello_world (test_core.default)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File "E:\Program
>> Files\Emscripten\emscripten\incoming\tests\test_core.py", lin
>> e 18, in test_hello_world
>> self.do_run_from_file(src, output)
>> File "E:\Program Files\Emscripten\emscripten\incoming\tests\runner.py",
>> line 4
>> 79, in do_run_from_file
>> includes, force_c, build_ll_hook, extra_emscripten_args)
>> File "E:\Program Files\Emscripten\emscripten\incoming\tests\runner.py",
>> line 4
>> 91, in do_run
>> build_ll_hook=build_ll_hook,
>> extra_emscripten_args=extra_emscripten_args, po
>> st_build=post_build)
>> File "E:\Program Files\Emscripten\emscripten\incoming\tests\runner.py",
>> line 2
>> 57, in build
>> assert os.path.exists(filename + '.o.js'), 'Source compilation error:
>> ' + ou
>> tput
>> AssertionError: Source compilation error: Traceback (most recent call
>> last):
>> File "E:\Program Files\Emscripten\emscripten\incoming\emscripten.py",
>> line 106
>> 7, in <module>
>> _main(environ=os.environ)
>> File "E:\Program Files\Emscripten\emscripten\incoming\emscripten.py",
>> line 105
>> 7, in _main
>> temp_files.run_and_clean(lambda: main(
>> File "E:\Program
>> Files\Emscripten\emscripten\incoming\tools\tempfiles.py", lin
>> e 39, in run_and_clean
>> return func()
>> File "E:\Program Files\Emscripten\emscripten\incoming\emscripten.py",
>> line 106
>> 3, in <lambda>
>> DEBUG_CACHE=DEBUG_CACHE,
>> File "E:\Program Files\Emscripten\emscripten\incoming\emscripten.py",
>> line 964
>> , in main
>> temp_files=temp_files, DEBUG=DEBUG, DEBUG_CACHE=DEBUG_CACHE)
>> File "E:\Program Files\Emscripten\emscripten\incoming\emscripten.py",
>> line 183
>> , in emscript
>> settings['MAX_GLOBAL_ALIGN'] = metadata['maxGlobalAlign']
>> KeyError: 'maxGlobalAlign'
>> Traceback (most recent call last):
>> File "E:\Program Files\Emscripten\emscripten\incoming\emcc", line 1294,
>> in <mo
>> dule>
>> final = shared.Building.emscripten(final, append_ext=False,
>> extra_args=extra
>> _args)
>> File "E:\Program Files\Emscripten\emscripten\incoming\tools\shared.py",
>> line 1
>> 535, in emscripten
>> assert os.path.exists(filename + '.o.js'), 'Emscripten failed to
>> generate .j
>> s'
>> AssertionError: Emscripten failed to generate .js
>>
>>
>> ----------------------------------------------------------------------
>> Ran 1 test in 1.128s
>>
>> FAILED (failures=1)
>>
>> Any ideas?
>>
>> Thanks,
>>
>> David
>>
>>
>> On Monday, July 6, 2015 at 8:29:59 PM UTC-7, Alon Zakai wrote:
>>>
>>> Is that the latest on the incoming branch? There was a recent fix there
>>> for something that looks like your issue.
>>>
>>>
>>> On Mon, Jul 6, 2015 at 6:43 PM, <[email protected]> wrote:
>>>
>>>> When I try using the latest Emscripten version 1.34.1 I get the
>>>> following error:
>>>>
>>>> Traceback (most recent call last):
>>>> File "E:\Program Files\Emscripten\emscripten\1.34.1\\emcc", line
>>>> 1260, in <mod
>>>> ule>
>>>> shared.Building.llvm_opt(final, link_opts)
>>>> File "E:\Program Files\Emscripten\emscripten\1.34.1\tools\shared.py",
>>>> line 142
>>>> 9, in llvm_opt
>>>> assert os.path.exists(target), 'Failed to run llvm optimizations: '
>>>> + output
>>>>
>>>> AssertionError: Failed to run llvm optimizations:
>>>>
>>>> Any help would be much appreciated.
>>>>
>>>> Thanks,
>>>>
>>>> David
>>>>
>>>
>>>
>>
>
--
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.