OLD | NEW |
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 | 5 // modification, are permitted provided that the following conditions |
6 // are met: | 6 // are 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 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "src/macro-assembler.h" | 42 #include "src/macro-assembler.h" |
43 #include "src/serialize.h" | 43 #include "src/serialize.h" |
44 | 44 |
45 namespace v8 { | 45 namespace v8 { |
46 namespace internal { | 46 namespace internal { |
47 | 47 |
48 // ----------------------------------------------------------------------------- | 48 // ----------------------------------------------------------------------------- |
49 // Implementation of CpuFeatures | 49 // Implementation of CpuFeatures |
50 | 50 |
51 void CpuFeatures::ProbeImpl(bool cross_compile) { | 51 void CpuFeatures::ProbeImpl(bool cross_compile) { |
52 CPU cpu; | 52 base::CPU cpu; |
53 | 53 |
54 // Only use statically determined features for cross compile (snapshot). | 54 // Only use statically determined features for cross compile (snapshot). |
55 if (cross_compile) return; | 55 if (cross_compile) return; |
56 } | 56 } |
57 | 57 |
58 | 58 |
59 void CpuFeatures::PrintTarget() { } | 59 void CpuFeatures::PrintTarget() { } |
60 void CpuFeatures::PrintFeatures() { } | 60 void CpuFeatures::PrintFeatures() { } |
61 | 61 |
62 | 62 |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 } | 100 } |
101 | 101 |
102 | 102 |
103 void RelocInfo::PatchCode(byte* instructions, int instruction_count) { | 103 void RelocInfo::PatchCode(byte* instructions, int instruction_count) { |
104 // Patch the code at the current address with the supplied instructions. | 104 // Patch the code at the current address with the supplied instructions. |
105 for (int i = 0; i < instruction_count; i++) { | 105 for (int i = 0; i < instruction_count; i++) { |
106 *(pc_ + i) = *(instructions + i); | 106 *(pc_ + i) = *(instructions + i); |
107 } | 107 } |
108 | 108 |
109 // Indicate that code has changed. | 109 // Indicate that code has changed. |
110 CPU::FlushICache(pc_, instruction_count); | 110 CpuFeatures::FlushICache(pc_, instruction_count); |
111 } | 111 } |
112 | 112 |
113 | 113 |
114 // Patch the code at the current PC with a call to the target address. | 114 // Patch the code at the current PC with a call to the target address. |
115 // Additional guard int3 instructions can be added if required. | 115 // Additional guard int3 instructions can be added if required. |
116 void RelocInfo::PatchCodeWithCall(Address target, int guard_bytes) { | 116 void RelocInfo::PatchCodeWithCall(Address target, int guard_bytes) { |
117 // Call instruction takes up 5 bytes and int3 takes up one byte. | 117 // Call instruction takes up 5 bytes and int3 takes up one byte. |
118 static const int kCallCodeSize = 5; | 118 static const int kCallCodeSize = 5; |
119 int code_size = kCallCodeSize + guard_bytes; | 119 int code_size = kCallCodeSize + guard_bytes; |
120 | 120 |
(...skipping 1898 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2019 fprintf(coverage_log, "%s\n", file_line); | 2019 fprintf(coverage_log, "%s\n", file_line); |
2020 fflush(coverage_log); | 2020 fflush(coverage_log); |
2021 } | 2021 } |
2022 } | 2022 } |
2023 | 2023 |
2024 #endif | 2024 #endif |
2025 | 2025 |
2026 } } // namespace v8::internal | 2026 } } // namespace v8::internal |
2027 | 2027 |
2028 #endif // V8_TARGET_ARCH_X87 | 2028 #endif // V8_TARGET_ARCH_X87 |
OLD | NEW |