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

Side by Side Diff: src/globals.h

Issue 817143002: Contribution of PowerPC port (continuation of 422063005) (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 6 years 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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_GLOBALS_H_ 5 #ifndef V8_GLOBALS_H_
6 #define V8_GLOBALS_H_ 6 #define V8_GLOBALS_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 10 matching lines...) Expand all
21 # include <limits> // NOLINT 21 # include <limits> // NOLINT
22 # define V8_INFINITY std::numeric_limits<double>::infinity() 22 # define V8_INFINITY std::numeric_limits<double>::infinity()
23 #elif V8_LIBC_MSVCRT 23 #elif V8_LIBC_MSVCRT
24 # define V8_INFINITY HUGE_VAL 24 # define V8_INFINITY HUGE_VAL
25 #else 25 #else
26 # define V8_INFINITY INFINITY 26 # define V8_INFINITY INFINITY
27 #endif 27 #endif
28 28
29 #if V8_TARGET_ARCH_IA32 || (V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_32_BIT) || \ 29 #if V8_TARGET_ARCH_IA32 || (V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_32_BIT) || \
30 V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_MIPS || \ 30 V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_MIPS || \
31 V8_TARGET_ARCH_MIPS64 31 V8_TARGET_ARCH_MIPS64 || V8_TARGET_ARCH_PPC
32 #define V8_TURBOFAN_BACKEND 1 32 #define V8_TURBOFAN_BACKEND 1
33 #else 33 #else
34 #define V8_TURBOFAN_BACKEND 0 34 #define V8_TURBOFAN_BACKEND 0
35 #endif 35 #endif
36 #if V8_TURBOFAN_BACKEND 36 #if V8_TURBOFAN_BACKEND
37 #define V8_TURBOFAN_TARGET 1 37 #define V8_TURBOFAN_TARGET 1
38 #else 38 #else
39 #define V8_TURBOFAN_TARGET 0 39 #define V8_TURBOFAN_TARGET 0
40 #endif 40 #endif
41 41
(...skipping 10 matching lines...) Expand all
52 // Determine whether we are running in a simulated environment. 52 // Determine whether we are running in a simulated environment.
53 // Setting USE_SIMULATOR explicitly from the build script will force 53 // Setting USE_SIMULATOR explicitly from the build script will force
54 // the use of a simulated environment. 54 // the use of a simulated environment.
55 #if !defined(USE_SIMULATOR) 55 #if !defined(USE_SIMULATOR)
56 #if (V8_TARGET_ARCH_ARM64 && !V8_HOST_ARCH_ARM64) 56 #if (V8_TARGET_ARCH_ARM64 && !V8_HOST_ARCH_ARM64)
57 #define USE_SIMULATOR 1 57 #define USE_SIMULATOR 1
58 #endif 58 #endif
59 #if (V8_TARGET_ARCH_ARM && !V8_HOST_ARCH_ARM) 59 #if (V8_TARGET_ARCH_ARM && !V8_HOST_ARCH_ARM)
60 #define USE_SIMULATOR 1 60 #define USE_SIMULATOR 1
61 #endif 61 #endif
62 #if (V8_TARGET_ARCH_PPC && !V8_HOST_ARCH_PPC)
63 #define USE_SIMULATOR 1
64 #endif
62 #if (V8_TARGET_ARCH_MIPS && !V8_HOST_ARCH_MIPS) 65 #if (V8_TARGET_ARCH_MIPS && !V8_HOST_ARCH_MIPS)
63 #define USE_SIMULATOR 1 66 #define USE_SIMULATOR 1
64 #endif 67 #endif
65 #if (V8_TARGET_ARCH_MIPS64 && !V8_HOST_ARCH_MIPS64) 68 #if (V8_TARGET_ARCH_MIPS64 && !V8_HOST_ARCH_MIPS64)
66 #define USE_SIMULATOR 1 69 #define USE_SIMULATOR 1
67 #endif 70 #endif
68 #endif 71 #endif
69 72
70 // Determine whether the architecture uses an out-of-line constant pool. 73 // Determine whether the architecture uses an out-of-line constant pool.
71 #define V8_OOL_CONSTANT_POOL 0 74 #define V8_OOL_CONSTANT_POOL 0
72 75
73 #ifdef V8_TARGET_ARCH_ARM 76 #ifdef V8_TARGET_ARCH_ARM
74 // Set stack limit lower for ARM than for other architectures because 77 // Set stack limit lower for ARM than for other architectures because
75 // stack allocating MacroAssembler takes 120K bytes. 78 // stack allocating MacroAssembler takes 120K bytes.
76 // See issue crbug.com/405338 79 // See issue crbug.com/405338
77 #define V8_DEFAULT_STACK_SIZE_KB 864 80 #define V8_DEFAULT_STACK_SIZE_KB 864
78 #else 81 #else
79 // Slightly less than 1MB, since Windows' default stack size for 82 // Slightly less than 1MB, since Windows' default stack size for
80 // the main execution thread is 1MB for both 32 and 64-bit. 83 // the main execution thread is 1MB for both 32 and 64-bit.
81 #define V8_DEFAULT_STACK_SIZE_KB 984 84 #define V8_DEFAULT_STACK_SIZE_KB 984
82 #endif 85 #endif
83 86
84 87
85 // Determine whether double field unboxing feature is enabled. 88 // Determine whether double field unboxing feature is enabled.
86 #if (V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_ARM64) 89 #if (V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_PPC64)
Sven Panne 2015/01/08 10:13:53 Simpler and more future-proof: #if V8_TARGET_ARCH_
michael_dawson 2015/01/08 23:51:11 Will do
87 #define V8_DOUBLE_FIELDS_UNBOXING 1 90 #define V8_DOUBLE_FIELDS_UNBOXING 1
88 #else 91 #else
89 #define V8_DOUBLE_FIELDS_UNBOXING 0 92 #define V8_DOUBLE_FIELDS_UNBOXING 0
90 #endif 93 #endif
91 94
92 95
93 typedef uint8_t byte; 96 typedef uint8_t byte;
94 typedef byte* Address; 97 typedef byte* Address;
95 98
96 // ----------------------------------------------------------------------------- 99 // -----------------------------------------------------------------------------
(...skipping 519 matching lines...) Expand 10 before | Expand all | Expand 10 after
616 VFP32DREGS, 619 VFP32DREGS,
617 NEON, 620 NEON,
618 // MIPS, MIPS64 621 // MIPS, MIPS64
619 FPU, 622 FPU,
620 FP64FPU, 623 FP64FPU,
621 MIPSr1, 624 MIPSr1,
622 MIPSr2, 625 MIPSr2,
623 MIPSr6, 626 MIPSr6,
624 // ARM64 627 // ARM64
625 ALWAYS_ALIGN_CSP, 628 ALWAYS_ALIGN_CSP,
629 // PPC
630 FPR_GPR_MOV,
631 LWSYNC,
632 ISELECT,
626 NUMBER_OF_CPU_FEATURES 633 NUMBER_OF_CPU_FEATURES
627 }; 634 };
628 635
629 636
630 // Used to specify if a macro instruction must perform a smi check on tagged 637 // Used to specify if a macro instruction must perform a smi check on tagged
631 // values. 638 // values.
632 enum SmiCheckType { 639 enum SmiCheckType {
633 DONT_DO_SMI_CHECK, 640 DONT_DO_SMI_CHECK,
634 DO_SMI_CHECK 641 DO_SMI_CHECK
635 }; 642 };
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
808 DCHECK(IsValidFunctionKind(kind)); 815 DCHECK(IsValidFunctionKind(kind));
809 return kind & FunctionKind::kDefaultConstructor; 816 return kind & FunctionKind::kDefaultConstructor;
810 } 817 }
811 818
812 819
813 } } // namespace v8::internal 820 } } // namespace v8::internal
814 821
815 namespace i = v8::internal; 822 namespace i = v8::internal;
816 823
817 #endif // V8_GLOBALS_H_ 824 #endif // V8_GLOBALS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698