Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1070)

Side by Side Diff: build/toolchain.gypi

Issue 864483002: [ia32] Require SSE2. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2013 the V8 project authors. All rights reserved. 1 # Copyright 2013 the V8 project authors. All rights reserved.
2 # Redistribution and use in source and binary forms, with or without 2 # Redistribution and use in source and binary forms, with or without
3 # modification, are permitted provided that the following conditions are 3 # modification, are permitted provided that the following conditions are
4 # met: 4 # met:
5 # 5 #
6 # * Redistributions of source code must retain the above copyright 6 # * Redistributions of source code must retain the above copyright
7 # notice, this list of conditions and the following disclaimer. 7 # notice, this list of conditions and the following disclaimer.
8 # * Redistributions in binary form must reproduce the above 8 # * Redistributions in binary form must reproduce the above
9 # copyright notice, this list of conditions and the following 9 # copyright notice, this list of conditions and the following
10 # disclaimer in the documentation and/or other materials provided 10 # disclaimer in the documentation and/or other materials provided
(...skipping 793 matching lines...) Expand 10 before | Expand all | Expand 10 after
804 }], 804 }],
805 ['OS=="win" and v8_enable_prof==1', { 805 ['OS=="win" and v8_enable_prof==1', {
806 'msvs_settings': { 806 'msvs_settings': {
807 'VCLinkerTool': { 807 'VCLinkerTool': {
808 'GenerateMapFile': 'true', 808 'GenerateMapFile': 'true',
809 }, 809 },
810 }, 810 },
811 }], 811 }],
812 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ 812 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
813 or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ 813 or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
814 v8_target_arch=="ia32"', {
815 # All floating-point computations on x87 happens in 80-bit
816 # precision. Because the C and C++ language standards allow
817 # the compiler to keep the floating-point values in higher
818 # precision than what's specified in the source and doing so
819 # is more efficient than constantly rounding up to 64-bit or
820 # 32-bit precision as specified in the source, the compiler,
821 # especially in the optimized mode, tries very hard to keep
822 # values in x87 floating-point stack (in 80-bit precision)
823 # as long as possible. This has important side effects, that
824 # the real value used in computation may change depending on
825 # how the compiler did the optimization - that is, the value
826 # kept in 80-bit is different than the value rounded down to
827 # 64-bit or 32-bit. There are possible compiler options to
828 # make this behavior consistent (e.g. -ffloat-store would keep
829 # all floating-values in the memory, thus force them to be
830 # rounded to its original precision) but they have significant
831 # runtime performance penalty.
832 #
833 # -mfpmath=sse -msse2 makes the compiler use SSE instructions
834 # which keep floating-point values in SSE registers in its
835 # native precision (32-bit for single precision, and 64-bit
836 # for double precision values). This means the floating-point
837 # value used during computation does not change depending on
838 # how the compiler optimized the code, since the value is
839 # always kept in its specified precision.
840 #
841 # Refer to http://crbug.com/348761 for rationale behind SSE2
842 # being a minimum requirement for 32-bit Linux builds and
843 # http://crbug.com/313032 for an example where this has "bit"
844 # us in the past.
845 'cflags': [
846 '-msse2',
847 '-mfpmath=sse',
848 '-mmmx', # Allows mmintrin.h for MMX intrinsics.
849 ],
850 }],
851 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
852 or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
814 (v8_target_arch=="arm" or v8_target_arch=="ia32" or \ 853 (v8_target_arch=="arm" or v8_target_arch=="ia32" or \
815 v8_target_arch=="x87" or v8_target_arch=="mips" or \ 854 v8_target_arch=="x87" or v8_target_arch=="mips" or \
816 v8_target_arch=="mipsel" or v8_target_arch=="ppc")', { 855 v8_target_arch=="mipsel" or v8_target_arch=="ppc")', {
817 'target_conditions': [ 856 'target_conditions': [
818 ['_toolset=="host"', { 857 ['_toolset=="host"', {
819 'conditions': [ 858 'conditions': [
820 ['host_cxx_is_biarch==1', { 859 ['host_cxx_is_biarch==1', {
821 'cflags': [ '-m32' ], 860 'cflags': [ '-m32' ],
822 'ldflags': [ '-m32' ] 861 'ldflags': [ '-m32' ]
823 }], 862 }],
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after
1123 ['v8_enable_slow_dchecks==1', { 1162 ['v8_enable_slow_dchecks==1', {
1124 'defines': [ 1163 'defines': [
1125 'ENABLE_SLOW_DCHECKS', 1164 'ENABLE_SLOW_DCHECKS',
1126 ], 1165 ],
1127 }], 1166 }],
1128 ], # conditions 1167 ], # conditions
1129 }, # Release 1168 }, # Release
1130 }, # configurations 1169 }, # configurations
1131 }, # target_defaults 1170 }, # target_defaults
1132 } 1171 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698