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

Side by Side Diff: test/cctest/test-api.cc

Issue 426863006: MIPS64: Add support for architecture revision 6. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressed comments. Created 6 years, 4 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 | « src/mips64/simulator-mips64.cc ('k') | test/cctest/test-assembler-mips64.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 18046 matching lines...) Expand 10 before | Expand all | Expand 10 after
18057 18057
18058 // Check that Number::New preserves non-NaNs and quiets SNaNs. 18058 // Check that Number::New preserves non-NaNs and quiets SNaNs.
18059 v8::Handle<v8::Value> number = v8::Number::New(isolate, test_value); 18059 v8::Handle<v8::Value> number = v8::Number::New(isolate, test_value);
18060 double stored_number = number->NumberValue(); 18060 double stored_number = number->NumberValue();
18061 if (!std::isnan(test_value)) { 18061 if (!std::isnan(test_value)) {
18062 CHECK_EQ(test_value, stored_number); 18062 CHECK_EQ(test_value, stored_number);
18063 } else { 18063 } else {
18064 uint64_t stored_bits = DoubleToBits(stored_number); 18064 uint64_t stored_bits = DoubleToBits(stored_number);
18065 // Check if quiet nan (bits 51..62 all set). 18065 // Check if quiet nan (bits 51..62 all set).
18066 #if (defined(V8_TARGET_ARCH_MIPS) || defined(V8_TARGET_ARCH_MIPS64)) && \ 18066 #if (defined(V8_TARGET_ARCH_MIPS) || defined(V8_TARGET_ARCH_MIPS64)) && \
18067 !defined(USE_SIMULATOR) 18067 !defined(_MIPS_ARCH_MIPS64R6) && !defined(USE_SIMULATOR)
18068 // Most significant fraction bit for quiet nan is set to 0 18068 // Most significant fraction bit for quiet nan is set to 0
18069 // on MIPS architecture. Allowed by IEEE-754. 18069 // on MIPS architecture. Allowed by IEEE-754.
18070 CHECK_EQ(0xffe, static_cast<int>((stored_bits >> 51) & 0xfff)); 18070 CHECK_EQ(0xffe, static_cast<int>((stored_bits >> 51) & 0xfff));
18071 #else 18071 #else
18072 CHECK_EQ(0xfff, static_cast<int>((stored_bits >> 51) & 0xfff)); 18072 CHECK_EQ(0xfff, static_cast<int>((stored_bits >> 51) & 0xfff));
18073 #endif 18073 #endif
18074 } 18074 }
18075 18075
18076 // Check that Date::New preserves non-NaNs in the date range and 18076 // Check that Date::New preserves non-NaNs in the date range and
18077 // quiets SNaNs. 18077 // quiets SNaNs.
18078 v8::Handle<v8::Value> date = 18078 v8::Handle<v8::Value> date =
18079 v8::Date::New(isolate, test_value); 18079 v8::Date::New(isolate, test_value);
18080 double expected_stored_date = DoubleToDateTime(test_value); 18080 double expected_stored_date = DoubleToDateTime(test_value);
18081 double stored_date = date->NumberValue(); 18081 double stored_date = date->NumberValue();
18082 if (!std::isnan(expected_stored_date)) { 18082 if (!std::isnan(expected_stored_date)) {
18083 CHECK_EQ(expected_stored_date, stored_date); 18083 CHECK_EQ(expected_stored_date, stored_date);
18084 } else { 18084 } else {
18085 uint64_t stored_bits = DoubleToBits(stored_date); 18085 uint64_t stored_bits = DoubleToBits(stored_date);
18086 // Check if quiet nan (bits 51..62 all set). 18086 // Check if quiet nan (bits 51..62 all set).
18087 #if (defined(V8_TARGET_ARCH_MIPS) || defined(V8_TARGET_ARCH_MIPS64)) && \ 18087 #if (defined(V8_TARGET_ARCH_MIPS) || defined(V8_TARGET_ARCH_MIPS64)) && \
18088 !defined(USE_SIMULATOR) 18088 !defined(_MIPS_ARCH_MIPS64R6) && !defined(USE_SIMULATOR)
18089 // Most significant fraction bit for quiet nan is set to 0 18089 // Most significant fraction bit for quiet nan is set to 0
18090 // on MIPS architecture. Allowed by IEEE-754. 18090 // on MIPS architecture. Allowed by IEEE-754.
18091 CHECK_EQ(0xffe, static_cast<int>((stored_bits >> 51) & 0xfff)); 18091 CHECK_EQ(0xffe, static_cast<int>((stored_bits >> 51) & 0xfff));
18092 #else 18092 #else
18093 CHECK_EQ(0xfff, static_cast<int>((stored_bits >> 51) & 0xfff)); 18093 CHECK_EQ(0xfff, static_cast<int>((stored_bits >> 51) & 0xfff));
18094 #endif 18094 #endif
18095 } 18095 }
18096 } 18096 }
18097 } 18097 }
18098 18098
(...skipping 4730 matching lines...) Expand 10 before | Expand all | Expand 10 after
22829 desc = x->GetOwnPropertyDescriptor(v8_str("p1")); 22829 desc = x->GetOwnPropertyDescriptor(v8_str("p1"));
22830 Local<Function> set = 22830 Local<Function> set =
22831 Local<Function>::Cast(Local<Object>::Cast(desc)->Get(v8_str("set"))); 22831 Local<Function>::Cast(Local<Object>::Cast(desc)->Get(v8_str("set")));
22832 Local<Function> get = 22832 Local<Function> get =
22833 Local<Function>::Cast(Local<Object>::Cast(desc)->Get(v8_str("get"))); 22833 Local<Function>::Cast(Local<Object>::Cast(desc)->Get(v8_str("get")));
22834 CHECK_EQ(v8_num(13), get->Call(x, 0, NULL)); 22834 CHECK_EQ(v8_num(13), get->Call(x, 0, NULL));
22835 Handle<Value> args[] = { v8_num(14) }; 22835 Handle<Value> args[] = { v8_num(14) };
22836 set->Call(x, 1, args); 22836 set->Call(x, 1, args);
22837 CHECK_EQ(v8_num(14), get->Call(x, 0, NULL)); 22837 CHECK_EQ(v8_num(14), get->Call(x, 0, NULL));
22838 } 22838 }
OLDNEW
« no previous file with comments | « src/mips64/simulator-mips64.cc ('k') | test/cctest/test-assembler-mips64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698