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

Side by Side Diff: runtime/vm/assembler_arm_test.cc

Issue 2489953003: Fix ARM and MIPS builds for gcc 4.9.2. (Closed)
Patch Set: Created 4 years, 1 month 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 | « no previous file | runtime/vm/assembler_mips_test.cc » ('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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" 5 #include "vm/globals.h"
6 #if defined(TARGET_ARCH_ARM) 6 #if defined(TARGET_ARCH_ARM)
7 7
8 #include "vm/assembler.h" 8 #include "vm/assembler.h"
9 #include "vm/cpu.h" 9 #include "vm/cpu.h"
10 #include "vm/os.h" 10 #include "vm/os.h"
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 __ mov(R0, Operand(R1)); 181 __ mov(R0, Operand(R1));
182 __ bx(LR); 182 __ bx(LR);
183 } 183 }
184 184
185 185
186 ASSEMBLER_TEST_RUN(LoadWordUnaligned, test) { 186 ASSEMBLER_TEST_RUN(LoadWordUnaligned, test) {
187 EXPECT(test != NULL); 187 EXPECT(test != NULL);
188 typedef intptr_t (*LoadWordUnaligned)(intptr_t) DART_UNUSED; 188 typedef intptr_t (*LoadWordUnaligned)(intptr_t) DART_UNUSED;
189 uint8_t buffer[8] = {0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0}; 189 uint8_t buffer[8] = {0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0};
190 190
191 EXPECT_EQ(0x78563412, EXECUTE_TEST_CODE_INTPTR_INTPTR( 191 EXPECT_EQ(
192 LoadWordUnaligned, test->entry(), 192 static_cast<intptr_t>(0x78563412),
193 reinterpret_cast<intptr_t>(&buffer[0]))); 193 EXECUTE_TEST_CODE_INTPTR_INTPTR(LoadWordUnaligned, test->entry(),
194 EXPECT_EQ(0x9A785634, EXECUTE_TEST_CODE_INTPTR_INTPTR( 194 reinterpret_cast<intptr_t>(&buffer[0])));
195 LoadWordUnaligned, test->entry(), 195 EXPECT_EQ(
196 reinterpret_cast<intptr_t>(&buffer[1]))); 196 static_cast<intptr_t>(0x9A785634),
197 EXPECT_EQ(0xBC9A7856, EXECUTE_TEST_CODE_INTPTR_INTPTR( 197 EXECUTE_TEST_CODE_INTPTR_INTPTR(LoadWordUnaligned, test->entry(),
198 LoadWordUnaligned, test->entry(), 198 reinterpret_cast<intptr_t>(&buffer[1])));
199 reinterpret_cast<intptr_t>(&buffer[2]))); 199 EXPECT_EQ(
200 EXPECT_EQ(0xDEBC9A78, EXECUTE_TEST_CODE_INTPTR_INTPTR( 200 static_cast<intptr_t>(0xBC9A7856),
201 LoadWordUnaligned, test->entry(), 201 EXECUTE_TEST_CODE_INTPTR_INTPTR(LoadWordUnaligned, test->entry(),
202 reinterpret_cast<intptr_t>(&buffer[3]))); 202 reinterpret_cast<intptr_t>(&buffer[2])));
203 EXPECT_EQ(
204 static_cast<intptr_t>(0xDEBC9A78),
205 EXECUTE_TEST_CODE_INTPTR_INTPTR(LoadWordUnaligned, test->entry(),
206 reinterpret_cast<intptr_t>(&buffer[3])));
203 } 207 }
204 208
205 209
206 ASSEMBLER_TEST_GENERATE(StoreWordUnaligned, assembler) { 210 ASSEMBLER_TEST_GENERATE(StoreWordUnaligned, assembler) {
207 __ LoadImmediate(R1, 0x12345678); 211 __ LoadImmediate(R1, 0x12345678);
208 __ StoreWordUnaligned(R1, R0, TMP); 212 __ StoreWordUnaligned(R1, R0, TMP);
209 __ mov(R0, Operand(R1)); 213 __ mov(R0, Operand(R1));
210 __ bx(LR); 214 __ bx(LR);
211 } 215 }
212 216
(...skipping 3898 matching lines...) Expand 10 before | Expand all | Expand 10 after
4111 __ mov(THR, Operand(R2)); 4115 __ mov(THR, Operand(R2));
4112 __ StoreIntoObject(R1, FieldAddress(R1, GrowableObjectArray::data_offset()), 4116 __ StoreIntoObject(R1, FieldAddress(R1, GrowableObjectArray::data_offset()),
4113 R0); 4117 R0);
4114 __ PopList((1 << LR) | (1 << THR)); 4118 __ PopList((1 << LR) | (1 << THR));
4115 __ Ret(); 4119 __ Ret();
4116 } 4120 }
4117 4121
4118 } // namespace dart 4122 } // namespace dart
4119 4123
4120 #endif // defined TARGET_ARCH_ARM 4124 #endif // defined TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/assembler_mips_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698