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

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

Issue 1372133006: Fix unwanted float-to-double-promotions (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 2 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
« no previous file with comments | « test/cctest/test-assembler-arm.cc ('k') | test/cctest/test-serialize.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 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 float lanes[4] = {1, 2, 3, 4}; 253 float lanes[4] = {1, 2, 3, 4};
254 float quiet_NaN = std::numeric_limits<float>::quiet_NaN(); 254 float quiet_NaN = std::numeric_limits<float>::quiet_NaN();
255 float signaling_NaN = std::numeric_limits<float>::signaling_NaN(); 255 float signaling_NaN = std::numeric_limits<float>::signaling_NaN();
256 256
257 Handle<Float32x4> value = factory->NewFloat32x4(lanes); 257 Handle<Float32x4> value = factory->NewFloat32x4(lanes);
258 CHECK(value->IsFloat32x4()); 258 CHECK(value->IsFloat32x4());
259 CheckSimdValue<Float32x4, float, 4>(*value, lanes, 3.14f); 259 CheckSimdValue<Float32x4, float, 4>(*value, lanes, 3.14f);
260 260
261 // Check special lane values. 261 // Check special lane values.
262 value->set_lane(1, -0.0); 262 value->set_lane(1, -0.0);
263 CHECK_EQ(-0.0, value->get_lane(1)); 263 CHECK_EQ(-0.0f, value->get_lane(1));
264 CHECK(std::signbit(value->get_lane(1))); // Sign bit should be preserved. 264 CHECK(std::signbit(value->get_lane(1))); // Sign bit should be preserved.
265 value->set_lane(2, quiet_NaN); 265 value->set_lane(2, quiet_NaN);
266 CHECK(std::isnan(value->get_lane(2))); 266 CHECK(std::isnan(value->get_lane(2)));
267 value->set_lane(3, signaling_NaN); 267 value->set_lane(3, signaling_NaN);
268 CHECK(std::isnan(value->get_lane(3))); 268 CHECK(std::isnan(value->get_lane(3)));
269 269
270 #ifdef OBJECT_PRINT 270 #ifdef OBJECT_PRINT
271 // Check value printing. 271 // Check value printing.
272 { 272 {
273 value = factory->NewFloat32x4(lanes); 273 value = factory->NewFloat32x4(lanes);
(...skipping 6150 matching lines...) Expand 10 before | Expand all | Expand 10 after
6424 // The CollectGarbage call above starts sweeper threads. 6424 // The CollectGarbage call above starts sweeper threads.
6425 // The crash will happen if the following two functions 6425 // The crash will happen if the following two functions
6426 // are called before sweeping finishes. 6426 // are called before sweeping finishes.
6427 heap->StartIncrementalMarking(); 6427 heap->StartIncrementalMarking();
6428 heap->FinalizeIncrementalMarkingIfComplete("test"); 6428 heap->FinalizeIncrementalMarkingIfComplete("test");
6429 } 6429 }
6430 6430
6431 6431
6432 } // namespace internal 6432 } // namespace internal
6433 } // namespace v8 6433 } // namespace v8
OLDNEW
« no previous file with comments | « test/cctest/test-assembler-arm.cc ('k') | test/cctest/test-serialize.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698