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

Side by Side Diff: src/assembler.cc

Issue 293743005: Introduce x87 port (Closed) Base URL: git://github.com/v8/v8.git@master
Patch Set: rebase Created 6 years, 7 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 | « build/toolchain.gypi ('k') | src/code-stubs.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 #if V8_TARGET_ARCH_IA32 59 #if V8_TARGET_ARCH_IA32
60 #include "ia32/assembler-ia32-inl.h" 60 #include "ia32/assembler-ia32-inl.h"
61 #elif V8_TARGET_ARCH_X64 61 #elif V8_TARGET_ARCH_X64
62 #include "x64/assembler-x64-inl.h" 62 #include "x64/assembler-x64-inl.h"
63 #elif V8_TARGET_ARCH_ARM64 63 #elif V8_TARGET_ARCH_ARM64
64 #include "arm64/assembler-arm64-inl.h" 64 #include "arm64/assembler-arm64-inl.h"
65 #elif V8_TARGET_ARCH_ARM 65 #elif V8_TARGET_ARCH_ARM
66 #include "arm/assembler-arm-inl.h" 66 #include "arm/assembler-arm-inl.h"
67 #elif V8_TARGET_ARCH_MIPS 67 #elif V8_TARGET_ARCH_MIPS
68 #include "mips/assembler-mips-inl.h" 68 #include "mips/assembler-mips-inl.h"
69 #elif V8_TARGET_ARCH_X87
70 #include "x87/assembler-x87-inl.h"
69 #else 71 #else
70 #error "Unknown architecture." 72 #error "Unknown architecture."
71 #endif 73 #endif
72 74
73 // Include native regexp-macro-assembler. 75 // Include native regexp-macro-assembler.
74 #ifndef V8_INTERPRETED_REGEXP 76 #ifndef V8_INTERPRETED_REGEXP
75 #if V8_TARGET_ARCH_IA32 77 #if V8_TARGET_ARCH_IA32
76 #include "ia32/regexp-macro-assembler-ia32.h" 78 #include "ia32/regexp-macro-assembler-ia32.h"
77 #elif V8_TARGET_ARCH_X64 79 #elif V8_TARGET_ARCH_X64
78 #include "x64/regexp-macro-assembler-x64.h" 80 #include "x64/regexp-macro-assembler-x64.h"
79 #elif V8_TARGET_ARCH_ARM64 81 #elif V8_TARGET_ARCH_ARM64
80 #include "arm64/regexp-macro-assembler-arm64.h" 82 #include "arm64/regexp-macro-assembler-arm64.h"
81 #elif V8_TARGET_ARCH_ARM 83 #elif V8_TARGET_ARCH_ARM
82 #include "arm/regexp-macro-assembler-arm.h" 84 #include "arm/regexp-macro-assembler-arm.h"
83 #elif V8_TARGET_ARCH_MIPS 85 #elif V8_TARGET_ARCH_MIPS
84 #include "mips/regexp-macro-assembler-mips.h" 86 #include "mips/regexp-macro-assembler-mips.h"
87 #elif V8_TARGET_ARCH_X87
88 #include "x87/regexp-macro-assembler-x87.h"
85 #else // Unknown architecture. 89 #else // Unknown architecture.
86 #error "Unknown architecture." 90 #error "Unknown architecture."
87 #endif // Target architecture. 91 #endif // Target architecture.
88 #endif // V8_INTERPRETED_REGEXP 92 #endif // V8_INTERPRETED_REGEXP
89 93
90 namespace v8 { 94 namespace v8 {
91 namespace internal { 95 namespace internal {
92 96
93 // ----------------------------------------------------------------------------- 97 // -----------------------------------------------------------------------------
94 // Common double constants. 98 // Common double constants.
(...skipping 1243 matching lines...) Expand 10 before | Expand all | Expand 10 after
1338 #if V8_TARGET_ARCH_X64 1342 #if V8_TARGET_ARCH_X64
1339 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState); 1343 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState);
1340 #elif V8_TARGET_ARCH_IA32 1344 #elif V8_TARGET_ARCH_IA32
1341 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState); 1345 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState);
1342 #elif V8_TARGET_ARCH_ARM64 1346 #elif V8_TARGET_ARCH_ARM64
1343 function = FUNCTION_ADDR(RegExpMacroAssemblerARM64::CheckStackGuardState); 1347 function = FUNCTION_ADDR(RegExpMacroAssemblerARM64::CheckStackGuardState);
1344 #elif V8_TARGET_ARCH_ARM 1348 #elif V8_TARGET_ARCH_ARM
1345 function = FUNCTION_ADDR(RegExpMacroAssemblerARM::CheckStackGuardState); 1349 function = FUNCTION_ADDR(RegExpMacroAssemblerARM::CheckStackGuardState);
1346 #elif V8_TARGET_ARCH_MIPS 1350 #elif V8_TARGET_ARCH_MIPS
1347 function = FUNCTION_ADDR(RegExpMacroAssemblerMIPS::CheckStackGuardState); 1351 function = FUNCTION_ADDR(RegExpMacroAssemblerMIPS::CheckStackGuardState);
1352 #elif V8_TARGET_ARCH_X87
1353 function = FUNCTION_ADDR(RegExpMacroAssemblerX87::CheckStackGuardState);
1348 #else 1354 #else
1349 UNREACHABLE(); 1355 UNREACHABLE();
1350 #endif 1356 #endif
1351 return ExternalReference(Redirect(isolate, function)); 1357 return ExternalReference(Redirect(isolate, function));
1352 } 1358 }
1353 1359
1354 1360
1355 ExternalReference ExternalReference::re_grow_stack(Isolate* isolate) { 1361 ExternalReference ExternalReference::re_grow_stack(Isolate* isolate) {
1356 return ExternalReference( 1362 return ExternalReference(
1357 Redirect(isolate, FUNCTION_ADDR(NativeRegExpMacroAssembler::GrowStack))); 1363 Redirect(isolate, FUNCTION_ADDR(NativeRegExpMacroAssembler::GrowStack)));
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
1647 r2 = r2 - ad; 1653 r2 = r2 - ad;
1648 } 1654 }
1649 delta = ad - r2; 1655 delta = ad - r2;
1650 } while (q1 < delta || (q1 == delta && r1 == 0)); 1656 } while (q1 < delta || (q1 == delta && r1 == 0));
1651 int32_t mul = static_cast<int32_t>(q2 + 1); 1657 int32_t mul = static_cast<int32_t>(q2 + 1);
1652 multiplier_ = (d < 0) ? -mul : mul; 1658 multiplier_ = (d < 0) ? -mul : mul;
1653 shift_ = p - 32; 1659 shift_ = p - 32;
1654 } 1660 }
1655 1661
1656 } } // namespace v8::internal 1662 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « build/toolchain.gypi ('k') | src/code-stubs.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698