[Bug 202586] mail/thunderbird fail to build/wrong CFLAGS sse2 on i386

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Aug 23 17:56:36 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202586

--- Comment #1 from Jan Beich <jbeich at FreeBSD.org> ---
What kind of toolchain are you using? -Qunused-arguments suggests Clang of
unknown version. Check it's not broken:

  $ cat a.c
  #include <emmintrin.h>

  int main() {}

  $ cc -msse2 a.c
  $ cc -march=athlon-xp -msse2 a.c

  $ cc -msse2 -dM -E -</dev/null | fgrep SSE
  $ cc -march=athlon-xp -msse2 -dM -E -</dev/null | fgrep SSE

  $ find /usr/include /usr/lib/clang -name emmintrin.h
  /usr/include/clang/3.4.1/emmintrin.h
  [or]
  /usr/lib/clang/3.6.1/include/emmintrin.h

Gecko uses SSE2 only when CPU supports it with the check done at runtime. The
*optional* bits providing optimized routines are required to be built with
-msse2 flag. If SSE2 is used unconditionally somewhere Firefox would crash, not
fail to build.

https://dxr.mozilla.org/mozilla-central/source/intl/uconv/nsUTF8ToUnicode.cpp#170
https://dxr.mozilla.org/mozilla-central/source/mozglue/build/SSE.h#103

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-gecko mailing list