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

Side by Side Diff: src/arm/macro-assembler-arm.h

Issue 23600054: ARM: Tweak StoreKeyed. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 3 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/arm/lithium-codegen-arm.cc ('k') | src/arm/macro-assembler-arm.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 451 matching lines...) Expand 10 before | Expand all | Expand 10 after
462 // Ensure that FPSCR contains values needed by JavaScript. 462 // Ensure that FPSCR contains values needed by JavaScript.
463 // We need the NaNModeControlBit to be sure that operations like 463 // We need the NaNModeControlBit to be sure that operations like
464 // vadd and vsub generate the Canonical NaN (if a NaN must be generated). 464 // vadd and vsub generate the Canonical NaN (if a NaN must be generated).
465 // In VFP3 it will be always the Canonical NaN. 465 // In VFP3 it will be always the Canonical NaN.
466 // In VFP2 it will be either the Canonical NaN or the negative version 466 // In VFP2 it will be either the Canonical NaN or the negative version
467 // of the Canonical NaN. It doesn't matter if we have two values. The aim 467 // of the Canonical NaN. It doesn't matter if we have two values. The aim
468 // is to be sure to never generate the hole NaN. 468 // is to be sure to never generate the hole NaN.
469 void VFPEnsureFPSCRState(Register scratch); 469 void VFPEnsureFPSCRState(Register scratch);
470 470
471 // If the value is a NaN, canonicalize the value else, do nothing. 471 // If the value is a NaN, canonicalize the value else, do nothing.
472 void VFPCanonicalizeNaN(const DwVfpRegister dst,
473 const DwVfpRegister src,
474 const Condition cond = al);
472 void VFPCanonicalizeNaN(const DwVfpRegister value, 475 void VFPCanonicalizeNaN(const DwVfpRegister value,
473 const Condition cond = al); 476 const Condition cond = al) {
477 VFPCanonicalizeNaN(value, value, cond);
478 }
474 479
475 // Compare double values and move the result to the normal condition flags. 480 // Compare double values and move the result to the normal condition flags.
476 void VFPCompareAndSetFlags(const DwVfpRegister src1, 481 void VFPCompareAndSetFlags(const DwVfpRegister src1,
477 const DwVfpRegister src2, 482 const DwVfpRegister src2,
478 const Condition cond = al); 483 const Condition cond = al);
479 void VFPCompareAndSetFlags(const DwVfpRegister src1, 484 void VFPCompareAndSetFlags(const DwVfpRegister src1,
480 const double src2, 485 const double src2,
481 const Condition cond = al); 486 const Condition cond = al);
482 487
483 // Compare double values and then load the fpscr flags to a register. 488 // Compare double values and then load the fpscr flags to a register.
(...skipping 995 matching lines...) Expand 10 before | Expand all | Expand 10 after
1479 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) 1484 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__)
1480 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> 1485 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm->
1481 #else 1486 #else
1482 #define ACCESS_MASM(masm) masm-> 1487 #define ACCESS_MASM(masm) masm->
1483 #endif 1488 #endif
1484 1489
1485 1490
1486 } } // namespace v8::internal 1491 } } // namespace v8::internal
1487 1492
1488 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ 1493 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698