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

Side by Side Diff: src/assembler.cc

Issue 371923006: Add mips64 port. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebase Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « build/toolchain.gypi ('k') | src/base/atomicops.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 "src/ia32/assembler-ia32-inl.h" // NOLINT 60 #include "src/ia32/assembler-ia32-inl.h" // NOLINT
61 #elif V8_TARGET_ARCH_X64 61 #elif V8_TARGET_ARCH_X64
62 #include "src/x64/assembler-x64-inl.h" // NOLINT 62 #include "src/x64/assembler-x64-inl.h" // NOLINT
63 #elif V8_TARGET_ARCH_ARM64 63 #elif V8_TARGET_ARCH_ARM64
64 #include "src/arm64/assembler-arm64-inl.h" // NOLINT 64 #include "src/arm64/assembler-arm64-inl.h" // NOLINT
65 #elif V8_TARGET_ARCH_ARM 65 #elif V8_TARGET_ARCH_ARM
66 #include "src/arm/assembler-arm-inl.h" // NOLINT 66 #include "src/arm/assembler-arm-inl.h" // NOLINT
67 #elif V8_TARGET_ARCH_MIPS 67 #elif V8_TARGET_ARCH_MIPS
68 #include "src/mips/assembler-mips-inl.h" // NOLINT 68 #include "src/mips/assembler-mips-inl.h" // NOLINT
69 #elif V8_TARGET_ARCH_MIPS64
70 #include "src/mips64/assembler-mips64-inl.h" // NOLINT
69 #elif V8_TARGET_ARCH_X87 71 #elif V8_TARGET_ARCH_X87
70 #include "src/x87/assembler-x87-inl.h" // NOLINT 72 #include "src/x87/assembler-x87-inl.h" // NOLINT
71 #else 73 #else
72 #error "Unknown architecture." 74 #error "Unknown architecture."
73 #endif 75 #endif
74 76
75 // Include native regexp-macro-assembler. 77 // Include native regexp-macro-assembler.
76 #ifndef V8_INTERPRETED_REGEXP 78 #ifndef V8_INTERPRETED_REGEXP
77 #if V8_TARGET_ARCH_IA32 79 #if V8_TARGET_ARCH_IA32
78 #include "src/ia32/regexp-macro-assembler-ia32.h" // NOLINT 80 #include "src/ia32/regexp-macro-assembler-ia32.h" // NOLINT
79 #elif V8_TARGET_ARCH_X64 81 #elif V8_TARGET_ARCH_X64
80 #include "src/x64/regexp-macro-assembler-x64.h" // NOLINT 82 #include "src/x64/regexp-macro-assembler-x64.h" // NOLINT
81 #elif V8_TARGET_ARCH_ARM64 83 #elif V8_TARGET_ARCH_ARM64
82 #include "src/arm64/regexp-macro-assembler-arm64.h" // NOLINT 84 #include "src/arm64/regexp-macro-assembler-arm64.h" // NOLINT
83 #elif V8_TARGET_ARCH_ARM 85 #elif V8_TARGET_ARCH_ARM
84 #include "src/arm/regexp-macro-assembler-arm.h" // NOLINT 86 #include "src/arm/regexp-macro-assembler-arm.h" // NOLINT
85 #elif V8_TARGET_ARCH_MIPS 87 #elif V8_TARGET_ARCH_MIPS
86 #include "src/mips/regexp-macro-assembler-mips.h" // NOLINT 88 #include "src/mips/regexp-macro-assembler-mips.h" // NOLINT
89 #elif V8_TARGET_ARCH_MIPS64
90 #include "src/mips64/regexp-macro-assembler-mips64.h" // NOLINT
87 #elif V8_TARGET_ARCH_X87 91 #elif V8_TARGET_ARCH_X87
88 #include "src/x87/regexp-macro-assembler-x87.h" // NOLINT 92 #include "src/x87/regexp-macro-assembler-x87.h" // NOLINT
89 #else // Unknown architecture. 93 #else // Unknown architecture.
90 #error "Unknown architecture." 94 #error "Unknown architecture."
91 #endif // Target architecture. 95 #endif // Target architecture.
92 #endif // V8_INTERPRETED_REGEXP 96 #endif // V8_INTERPRETED_REGEXP
93 97
94 namespace v8 { 98 namespace v8 {
95 namespace internal { 99 namespace internal {
96 100
(...skipping 1236 matching lines...) Expand 10 before | Expand all | Expand 10 after
1333 #if V8_TARGET_ARCH_X64 1337 #if V8_TARGET_ARCH_X64
1334 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState); 1338 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState);
1335 #elif V8_TARGET_ARCH_IA32 1339 #elif V8_TARGET_ARCH_IA32
1336 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState); 1340 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState);
1337 #elif V8_TARGET_ARCH_ARM64 1341 #elif V8_TARGET_ARCH_ARM64
1338 function = FUNCTION_ADDR(RegExpMacroAssemblerARM64::CheckStackGuardState); 1342 function = FUNCTION_ADDR(RegExpMacroAssemblerARM64::CheckStackGuardState);
1339 #elif V8_TARGET_ARCH_ARM 1343 #elif V8_TARGET_ARCH_ARM
1340 function = FUNCTION_ADDR(RegExpMacroAssemblerARM::CheckStackGuardState); 1344 function = FUNCTION_ADDR(RegExpMacroAssemblerARM::CheckStackGuardState);
1341 #elif V8_TARGET_ARCH_MIPS 1345 #elif V8_TARGET_ARCH_MIPS
1342 function = FUNCTION_ADDR(RegExpMacroAssemblerMIPS::CheckStackGuardState); 1346 function = FUNCTION_ADDR(RegExpMacroAssemblerMIPS::CheckStackGuardState);
1347 #elif V8_TARGET_ARCH_MIPS64
1348 function = FUNCTION_ADDR(RegExpMacroAssemblerMIPS::CheckStackGuardState);
1343 #elif V8_TARGET_ARCH_X87 1349 #elif V8_TARGET_ARCH_X87
1344 function = FUNCTION_ADDR(RegExpMacroAssemblerX87::CheckStackGuardState); 1350 function = FUNCTION_ADDR(RegExpMacroAssemblerX87::CheckStackGuardState);
1345 #else 1351 #else
1346 UNREACHABLE(); 1352 UNREACHABLE();
1347 #endif 1353 #endif
1348 return ExternalReference(Redirect(isolate, function)); 1354 return ExternalReference(Redirect(isolate, function));
1349 } 1355 }
1350 1356
1351 1357
1352 ExternalReference ExternalReference::re_grow_stack(Isolate* isolate) { 1358 ExternalReference ExternalReference::re_grow_stack(Isolate* isolate) {
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
1650 r2 = r2 - ad; 1656 r2 = r2 - ad;
1651 } 1657 }
1652 delta = ad - r2; 1658 delta = ad - r2;
1653 } while (q1 < delta || (q1 == delta && r1 == 0)); 1659 } while (q1 < delta || (q1 == delta && r1 == 0));
1654 int32_t mul = static_cast<int32_t>(q2 + 1); 1660 int32_t mul = static_cast<int32_t>(q2 + 1);
1655 multiplier_ = (d < 0) ? -mul : mul; 1661 multiplier_ = (d < 0) ? -mul : mul;
1656 shift_ = p - 32; 1662 shift_ = p - 32;
1657 } 1663 }
1658 1664
1659 } } // namespace v8::internal 1665 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « build/toolchain.gypi ('k') | src/base/atomicops.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698