Awesome! Thanks for the fix.

I was hoping to use SSE2 for my PhysX build but that can wait a bit, for 
now I'll allow it to run without vector intrinsics.


On Thursday, September 3, 2015 at 9:34:58 AM UTC-4, jj wrote:
>
> Thanks! Fixed this in 
> https://github.com/kripken/emscripten/commit/b569e7e1dfa9f4ef5fbfaf44b16daccc57aa632b
>  
> . Note that SSE2 compiled code will currently most likely not work except 
> in debug builds, since our optimizer does not yet understand all SSE2 
> vector types, and because LLVM performs some optimizations that aren't 
> compatible with SIMD.js. SSE1 should work in both debug and optimized 
> release builds. To target SSE1, one uses -msse, and to target SSE2, use 
> -msse2. To enable LLVM autovectorization without explicit use of 
> intrinsics, one can use -s SIMD=1.
>
> 2015-09-01 17:54 GMT+03:00 Robert Goulet <[email protected] 
> <javascript:>>:
>
>> @jj where you able to get past this error when building PhysX 3.3.3 with 
>> SSE2 support using latest incoming?
>>
>> D:/dev/project/source/physx/webgl/Source/foundation/include/unix/sse2/PsUnixSse2InlineAoS.h:2880:9:
>>  
>> error: first two arguments to __builtin_shuffleve
>> ctor must be vectors
>>         return _mm_shuffle_ps(a, a, _MM_SHUFFLE(3,3,3,3));
>>                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> D:\dev\project\lib\emscripten-incoming-r0\emscripten\incoming\system\include\emscripten\xmmintrin.h:141:12:
>>  
>> note: expanded from macro '_mm_shuffle_ps
>> '
>>   ((__m128)__builtin_shufflevector((a), (b), \
>>            ^                       ~~~~~~~~
>>
>> Am I missing an Emscripten compile flag? So far the only SSE2 related 
>> flag I used is -msse2 at compile time.
>>
>> On Friday, August 28, 2015 at 1:43:44 PM UTC-4, Robert Goulet wrote:
>>>
>>> Yes that's exactly what I just did. Now just missing SSE2. :) I've seen 
>>> the commits in incoming branch, but I'll wait until 1.34.7 is out before I 
>>> try it. Thanks guys!
>>>
>>> On Friday, August 28, 2015 at 12:23:12 PM UTC-4, jj wrote:
>>>>
>>>> I just recently ported PhysX to build on Emscripten after the removal 
>>>> of syscalls. You see there that there's posix-specific paths that can be 
>>>> used instead, which Emscripten likes better. Instead of 
>>>> syscall(SYS_gettid) 
>>>> , you can call pthread_self(), and Emscripten does not have a concept of 
>>>> thread affinity, so that can be commented out (behave like the Apple/Qnx 
>>>> path).
>>>>
>>>>
>>>> 2015-08-28 2:10 GMT+03:00 Alon Zakai <[email protected]>:
>>>>
>>>>> There might be more standard ways to do that, I believe pthreads lets 
>>>>> you access the current thread's id, etc. Using those should work (to the 
>>>>> extent that we support those features - we don't have a way to support 
>>>>> affinity AFAIK).
>>>>>
>>>>> On Thu, Aug 27, 2015 at 2:34 PM, Robert Goulet <[email protected]> 
>>>>> wrote:
>>>>>
>>>>>> I'm not sure this is really important, it's used by PhysX 3.3.3 to 
>>>>>> retrieve thread id and manage affinity. I don't think this will prevent 
>>>>>> the 
>>>>>> library from running properly (perhaps slightly less optimal), so for 
>>>>>> now I 
>>>>>> would guess it's not really needed. But it's good to hear that the 
>>>>>> change 
>>>>>> was intended on Emscripten side. :)
>>>>>>
>>>>>> The calls refer to these ids:
>>>>>>
>>>>>> syscall(__NR_gettid);
>>>>>> syscall(__NR_sched_getaffinity, ...);
>>>>>>
>>>>>> Thanks for the quick reply!
>>>>>>
>>>>>>
>>>>>> On Thursday, August 27, 2015 at 4:43:36 PM UTC-4, Alon Zakai wrote:
>>>>>>>
>>>>>>> Yes, we don't support direct syscalls by the user any more. Those 
>>>>>>> are dynamic, and would require us to link in all the possible syscall 
>>>>>>> targets. We avoid that code size increase by linking in syscalls 
>>>>>>> statically.
>>>>>>>
>>>>>>> Do you actually need syscall() to work? We might be able to add an 
>>>>>>> option for that.
>>>>>>>
>>>>>>> On Thu, Aug 27, 2015 at 1:35 PM, Robert Goulet <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Looks like the function syscall is no longer available when using 
>>>>>>>> Emscripten 1.34.6?
>>>>>>>>
>>>>>>>> It used to be found in Emscripten 1.34.1, is this intended?
>>>>>>>>
>>>>>>>> Thanks!
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> 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] <javascript:>.
>> 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