--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/desktop/firefox/patches/firefox31-97-ycbcr2.patch Mon Jan 11 09:27:45 2016 -0800
@@ -0,0 +1,54 @@
+For studio. We can remove if we don't care about studio.
+
+EMMS() is not in sparc.
+
+--- mozilla-esr31/gfx/ycbcr/chromium_types.h.orig 2015-06-04 17:42:52.382798534 -0700
++++ mozilla-esr31/gfx/ycbcr/chromium_types.h 2015-06-04 17:42:52.407116949 -0700
+@@ -10,7 +10,7 @@
+ // On Windows, protypes.h is #included, which defines these types. This sucks!
+ #ifndef PROTYPES_H
+ typedef uint8_t uint8;
+-typedef int8_t int8;
++//typedef int8_t int8;
+ typedef int16_t int16;
+ typedef uint16_t uint16;
+ typedef uint32_t uint32;
+--- mozilla-esr31/gfx/ycbcr/moz.build.orig 2015-06-04 17:42:52.388097037 -0700
++++ mozilla-esr31/gfx/ycbcr/moz.build 2015-06-04 17:42:52.407236264 -0700
+@@ -34,7 +34,8 @@
+ ]
+ else:
+ SOURCES += ['yuv_convert_mmx.cpp']
+- SOURCES['yuv_convert_mmx.cpp'].flags += CONFIG['MMX_FLAGS']
++ if CONFIG['GNU_CC']:
++ SOURCES['yuv_convert_mmx.cpp'].flags += CONFIG['MMX_FLAGS']
+
+ if CONFIG['_MSC_VER']:
+ if CONFIG['OS_TEST'] == 'x86_64':
+--- mozilla-esr31/gfx/ycbcr/yuv_convert.cpp.orig 2015-06-04 17:42:52.393413194 -0700
++++ mozilla-esr31/gfx/ycbcr/yuv_convert.cpp 2015-06-04 17:42:52.407392523 -0700
+@@ -105,9 +105,11 @@
+ }
+ }
+
++#ifdef ARCH_CPU_X86_FAMILY
+ // MMX used for FastConvertYUVToRGB32Row requires emms instruction.
+ if (has_sse)
+ EMMS();
++#endif
+ }
+
+ // C version does 8 at a time to mimic MMX code
+@@ -348,9 +350,12 @@
+ #endif
+ }
+ }
++
++#ifdef ARCH_CPU_X86_FAMILY
+ // MMX used for FastConvertYUVToRGB32Row and FilterRows requires emms.
+ if (has_mmx)
+ EMMS();
++#endif
+ }
+
+ } // namespace gfx