OLD | NEW |
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 29 matching lines...) Expand all Loading... |
40 | 40 |
41 // Define these function prototypes to match JSEntryFunction in execution.cc. | 41 // Define these function prototypes to match JSEntryFunction in execution.cc. |
42 typedef Object* (*F1)(int x, int p1, int p2, int p3, int p4); | 42 typedef Object* (*F1)(int x, int p1, int p2, int p3, int p4); |
43 typedef Object* (*F2)(int x, int y, int p2, int p3, int p4); | 43 typedef Object* (*F2)(int x, int y, int p2, int p3, int p4); |
44 typedef Object* (*F3)(void* p, int p1, int p2, int p3, int p4); | 44 typedef Object* (*F3)(void* p, int p1, int p2, int p3, int p4); |
45 | 45 |
46 | 46 |
47 static v8::Persistent<v8::Context> env; | 47 static v8::Persistent<v8::Context> env; |
48 | 48 |
49 | 49 |
50 // The test framework does not accept flags on the command line, so we set them. | |
51 static void InitializeVM() { | 50 static void InitializeVM() { |
52 // Disable compilation of natives. | 51 // Disable compilation of natives. |
53 FLAG_disable_native_files = true; | 52 FLAG_disable_native_files = true; |
54 | 53 |
55 // Enable generation of comments. | |
56 FLAG_debug_code = true; | |
57 | |
58 if (env.IsEmpty()) { | 54 if (env.IsEmpty()) { |
59 env = v8::Context::New(); | 55 env = v8::Context::New(); |
60 } | 56 } |
61 } | 57 } |
62 | 58 |
63 | 59 |
64 #define __ assm. | 60 #define __ assm. |
65 | 61 |
66 TEST(MIPS0) { | 62 TEST(MIPS0) { |
67 InitializeVM(); | 63 InitializeVM(); |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
248 #ifdef DEBUG | 244 #ifdef DEBUG |
249 Code::cast(code)->Print(); | 245 Code::cast(code)->Print(); |
250 #endif | 246 #endif |
251 F2 f = FUNCTION_CAST<F2>(Code::cast(code)->entry()); | 247 F2 f = FUNCTION_CAST<F2>(Code::cast(code)->entry()); |
252 int res = reinterpret_cast<int>(CALL_GENERATED_CODE(f, 0xab0, 0xc, 0, 0, 0)); | 248 int res = reinterpret_cast<int>(CALL_GENERATED_CODE(f, 0xab0, 0xc, 0, 0, 0)); |
253 ::printf("f() = %d\n", res); | 249 ::printf("f() = %d\n", res); |
254 CHECK_EQ(0x31415926, res); | 250 CHECK_EQ(0x31415926, res); |
255 } | 251 } |
256 | 252 |
257 #undef __ | 253 #undef __ |
OLD | NEW |