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

Side by Side Diff: runtime/vm/unit_test.h

Issue 261783005: Begins work on arm64 floating point instructions. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: 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 | Annotate | Revision Log
« no previous file with comments | « runtime/vm/simulator_arm64.cc ('k') | no next file » | 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) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 #ifndef VM_UNIT_TEST_H_ 5 #ifndef VM_UNIT_TEST_H_
6 #define VM_UNIT_TEST_H_ 6 #define VM_UNIT_TEST_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 9
10 #include "platform/globals.h" 10 #include "platform/globals.h"
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 reinterpret_cast<name>(entry)(float_arg) 148 reinterpret_cast<name>(entry)(float_arg)
149 #define EXECUTE_TEST_CODE_INT32_D(name, entry, double_arg) \ 149 #define EXECUTE_TEST_CODE_INT32_D(name, entry, double_arg) \
150 reinterpret_cast<name>(entry)(double_arg) 150 reinterpret_cast<name>(entry)(double_arg)
151 #else 151 #else
152 // Not running on ARM or MIPS hardware, call simulator to execute code. 152 // Not running on ARM or MIPS hardware, call simulator to execute code.
153 #if defined(ARCH_IS_64_BIT) 153 #if defined(ARCH_IS_64_BIT)
154 // TODO(zra): Supply more macros for 64-bit as tests are added for ARM64. 154 // TODO(zra): Supply more macros for 64-bit as tests are added for ARM64.
155 #define EXECUTE_TEST_CODE_INT64(name, entry) \ 155 #define EXECUTE_TEST_CODE_INT64(name, entry) \
156 static_cast<int64_t>(Simulator::Current()->Call( \ 156 static_cast<int64_t>(Simulator::Current()->Call( \
157 bit_cast<int64_t, uword>(entry), 0, 0, 0, 0)) 157 bit_cast<int64_t, uword>(entry), 0, 0, 0, 0))
158 #define EXECUTE_TEST_CODE_DOUBLE(name, entry) \
159 bit_cast<double, int64_t>(Simulator::Current()->Call( \
160 bit_cast<int64_t, uword>(entry), 0, 0, 0, 0, true))
158 #else 161 #else
159 #define EXECUTE_TEST_CODE_INT32(name, entry) \ 162 #define EXECUTE_TEST_CODE_INT32(name, entry) \
160 static_cast<int32_t>(Simulator::Current()->Call( \ 163 static_cast<int32_t>(Simulator::Current()->Call( \
161 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0)) 164 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0))
165 #define EXECUTE_TEST_CODE_DOUBLE(name, entry) \
166 bit_cast<double, int64_t>(Simulator::Current()->Call( \
167 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0, true))
162 #endif 168 #endif
163 #define EXECUTE_TEST_CODE_INT64_LL(name, entry, long_arg0, long_arg1) \ 169 #define EXECUTE_TEST_CODE_INT64_LL(name, entry, long_arg0, long_arg1) \
164 static_cast<int64_t>(Simulator::Current()->Call( \ 170 static_cast<int64_t>(Simulator::Current()->Call( \
165 bit_cast<int32_t, uword>(entry), \ 171 bit_cast<int32_t, uword>(entry), \
166 Utils::Low32Bits(long_arg0), \ 172 Utils::Low32Bits(long_arg0), \
167 Utils::High32Bits(long_arg0), \ 173 Utils::High32Bits(long_arg0), \
168 Utils::Low32Bits(long_arg1), \ 174 Utils::Low32Bits(long_arg1), \
169 Utils::High32Bits(long_arg1))) 175 Utils::High32Bits(long_arg1)))
170 #define EXECUTE_TEST_CODE_FLOAT(name, entry) \ 176 #define EXECUTE_TEST_CODE_FLOAT(name, entry) \
171 bit_cast<float, int32_t>(Simulator::Current()->Call( \ 177 bit_cast<float, int32_t>(Simulator::Current()->Call( \
172 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0, true)) 178 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0, true))
173 #define EXECUTE_TEST_CODE_DOUBLE(name, entry) \
174 bit_cast<double, int64_t>(Simulator::Current()->Call( \
175 bit_cast<int32_t, uword>(entry), 0, 0, 0, 0, true))
176 #define EXECUTE_TEST_CODE_INT32_F(name, entry, float_arg) \ 179 #define EXECUTE_TEST_CODE_INT32_F(name, entry, float_arg) \
177 static_cast<int32_t>(Simulator::Current()->Call( \ 180 static_cast<int32_t>(Simulator::Current()->Call( \
178 bit_cast<int32_t, uword>(entry), \ 181 bit_cast<int32_t, uword>(entry), \
179 bit_cast<int32_t, float>(float_arg), \ 182 bit_cast<int32_t, float>(float_arg), \
180 0, 0, 0, false, true)) 183 0, 0, 0, false, true))
181 #define EXECUTE_TEST_CODE_INT32_D(name, entry, double_arg) \ 184 #define EXECUTE_TEST_CODE_INT32_D(name, entry, double_arg) \
182 static_cast<int32_t>(Simulator::Current()->Call( \ 185 static_cast<int32_t>(Simulator::Current()->Call( \
183 bit_cast<int32_t, uword>(entry), \ 186 bit_cast<int32_t, uword>(entry), \
184 Utils::Low32Bits(bit_cast<int64_t, double>(double_arg)), \ 187 Utils::Low32Bits(bit_cast<int64_t, double>(double_arg)), \
185 Utils::High32Bits(bit_cast<int64_t, double>(double_arg)), \ 188 Utils::High32Bits(bit_cast<int64_t, double>(double_arg)), \
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
395 } \ 398 } \
396 } else { \ 399 } else { \
397 dart::Expect(__FILE__, __LINE__).Fail("expected True, but was '%s'\n", \ 400 dart::Expect(__FILE__, __LINE__).Fail("expected True, but was '%s'\n", \
398 #handle); \ 401 #handle); \
399 } \ 402 } \
400 } while (0) 403 } while (0)
401 404
402 } // namespace dart 405 } // namespace dart
403 406
404 #endif // VM_UNIT_TEST_H_ 407 #endif // VM_UNIT_TEST_H_
OLDNEW
« no previous file with comments | « runtime/vm/simulator_arm64.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698