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/x64/codegen-x64.h

Issue 300004: X64 Win64: Reimplement fmod so that it works. (Closed)
Patch Set: And it lints. Created 11 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
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 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 541 matching lines...) Expand 10 before | Expand all | Expand 10 after
552 552
553 // Fast support for Math.random(). 553 // Fast support for Math.random().
554 void GenerateRandomPositiveSmi(ZoneList<Expression*>* args); 554 void GenerateRandomPositiveSmi(ZoneList<Expression*>* args);
555 555
556 // Fast support for Math.sin and Math.cos. 556 // Fast support for Math.sin and Math.cos.
557 enum MathOp { SIN, COS }; 557 enum MathOp { SIN, COS };
558 void GenerateFastMathOp(MathOp op, ZoneList<Expression*>* args); 558 void GenerateFastMathOp(MathOp op, ZoneList<Expression*>* args);
559 inline void GenerateMathSin(ZoneList<Expression*>* args); 559 inline void GenerateMathSin(ZoneList<Expression*>* args);
560 inline void GenerateMathCos(ZoneList<Expression*>* args); 560 inline void GenerateMathCos(ZoneList<Expression*>* args);
561 561
562 // Potentially alternative modulo operation.
563 void GenerateNumberMod(ZoneList<Expression*>* args);
564
562 // Simple condition analysis. 565 // Simple condition analysis.
563 enum ConditionAnalysis { 566 enum ConditionAnalysis {
564 ALWAYS_TRUE, 567 ALWAYS_TRUE,
565 ALWAYS_FALSE, 568 ALWAYS_FALSE,
566 DONT_KNOW 569 DONT_KNOW
567 }; 570 };
568 ConditionAnalysis AnalyzeCondition(Expression* cond); 571 ConditionAnalysis AnalyzeCondition(Expression* cond);
569 572
570 // Methods used to indicate which source code is generated for. Source 573 // Methods used to indicate which source code is generated for. Source
571 // positions are collected by the assembler and emitted with the relocation 574 // positions are collected by the assembler and emitted with the relocation
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
683 | FlagBits::encode(flags_) 686 | FlagBits::encode(flags_)
684 | SSE3Bits::encode(use_sse3_); 687 | SSE3Bits::encode(use_sse3_);
685 } 688 }
686 void Generate(MacroAssembler* masm); 689 void Generate(MacroAssembler* masm);
687 }; 690 };
688 691
689 692
690 } } // namespace v8::internal 693 } } // namespace v8::internal
691 694
692 #endif // V8_X64_CODEGEN_X64_H_ 695 #endif // V8_X64_CODEGEN_X64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698