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

Side by Side Diff: build/toolchain.gypi

Issue 863633002: Use signaling NaN for holes in fixed double arrays. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix phi? 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
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 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 [ 'arm_thumb==1', { 216 [ 'arm_thumb==1', {
217 'cflags': ['-mthumb',], 217 'cflags': ['-mthumb',],
218 }], 218 }],
219 [ 'arm_thumb==0', { 219 [ 'arm_thumb==0', {
220 'cflags': ['-marm',], 220 'cflags': ['-marm',],
221 }], 221 }],
222 ], 222 ],
223 }, { 223 }, {
224 # 'v8_target_arch!=target_arch' 224 # 'v8_target_arch!=target_arch'
225 # Target not built with an Arm CXX compiler (simulator build). 225 # Target not built with an Arm CXX compiler (simulator build).
226 'cflags': [
227 '-msse2',
228 '-mfpmath=sse',
229 '-mmmx', # Allows mmintrin.h for MMX intrinsics.
230 ],
226 'conditions': [ 231 'conditions': [
227 [ 'arm_float_abi=="hard"', { 232 [ 'arm_float_abi=="hard"', {
228 'defines': [ 233 'defines': [
229 'USE_EABI_HARDFLOAT=1', 234 'USE_EABI_HARDFLOAT=1',
230 ], 235 ],
231 }], 236 }],
232 [ 'arm_float_abi=="softfp" or arm_float_abi=="default"', { 237 [ 'arm_float_abi=="softfp" or arm_float_abi=="default"', {
233 'defines': [ 238 'defines': [
234 'USE_EABI_HARDFLOAT=0', 239 'USE_EABI_HARDFLOAT=0',
235 ], 240 ],
(...skipping 569 matching lines...) Expand 10 before | Expand all | Expand 10 after
805 ['OS=="win" and v8_enable_prof==1', { 810 ['OS=="win" and v8_enable_prof==1', {
806 'msvs_settings': { 811 'msvs_settings': {
807 'VCLinkerTool': { 812 'VCLinkerTool': {
808 'GenerateMapFile': 'true', 813 'GenerateMapFile': 'true',
809 }, 814 },
810 }, 815 },
811 }], 816 }],
812 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ 817 ['(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 \ 818 or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
814 v8_target_arch=="ia32"', { 819 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': [ 820 'cflags': [
846 '-msse2', 821 '-msse2',
847 '-mfpmath=sse', 822 '-mfpmath=sse',
848 '-mmmx', # Allows mmintrin.h for MMX intrinsics. 823 '-mmmx', # Allows mmintrin.h for MMX intrinsics.
849 ], 824 ],
850 }], 825 }],
851 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ 826 ['(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 \ 827 or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
853 (v8_target_arch=="arm" or v8_target_arch=="ia32" or \ 828 (v8_target_arch=="arm" or v8_target_arch=="ia32" or \
854 v8_target_arch=="x87" or v8_target_arch=="mips" or \ 829 v8_target_arch=="x87" or v8_target_arch=="mips" or \
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after
1162 ['v8_enable_slow_dchecks==1', { 1137 ['v8_enable_slow_dchecks==1', {
1163 'defines': [ 1138 'defines': [
1164 'ENABLE_SLOW_DCHECKS', 1139 'ENABLE_SLOW_DCHECKS',
1165 ], 1140 ],
1166 }], 1141 }],
1167 ], # conditions 1142 ], # conditions
1168 }, # Release 1143 }, # Release
1169 }, # configurations 1144 }, # configurations
1170 }, # target_defaults 1145 }, # target_defaults
1171 } 1146 }
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | src/arm/simulator-arm.cc » ('j') | src/arm64/lithium-codegen-arm64.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698