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/assembler-x64.cc

Issue 2815028: X64: Remove more fpu code. Unroll more local initialization loops. (Closed)
Patch Set: Addressed review comments. Created 10 years, 6 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 | « src/x64/assembler-x64.h ('k') | src/x64/codegen-x64.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 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 2720 matching lines...) Expand 10 before | Expand all | Expand 10 after
2731 EnsureSpace ensure_space(this); 2731 EnsureSpace ensure_space(this);
2732 last_pc_ = pc_; 2732 last_pc_ = pc_;
2733 emit(0xF2); 2733 emit(0xF2);
2734 emit_optional_rex_32(dst, src); 2734 emit_optional_rex_32(dst, src);
2735 emit(0x0F); 2735 emit(0x0F);
2736 emit(0x5A); 2736 emit(0x5A);
2737 emit_sse_operand(dst, src); 2737 emit_sse_operand(dst, src);
2738 } 2738 }
2739 2739
2740 2740
2741 void Assembler::cvtsd2si(Register dst, XMMRegister src) {
2742 EnsureSpace ensure_space(this);
2743 last_pc_ = pc_;
2744 emit(0xF2);
2745 emit_optional_rex_32(dst, src);
2746 emit(0x0F);
2747 emit(0x2D);
2748 emit_sse_operand(dst, src);
2749 }
2750
2751
2752 void Assembler::cvtsd2siq(Register dst, XMMRegister src) {
2753 EnsureSpace ensure_space(this);
2754 last_pc_ = pc_;
2755 emit(0xF2);
2756 emit_rex_64(dst, src);
2757 emit(0x0F);
2758 emit(0x2D);
2759 emit_sse_operand(dst, src);
2760 }
2761
2762
2741 void Assembler::addsd(XMMRegister dst, XMMRegister src) { 2763 void Assembler::addsd(XMMRegister dst, XMMRegister src) {
2742 EnsureSpace ensure_space(this); 2764 EnsureSpace ensure_space(this);
2743 last_pc_ = pc_; 2765 last_pc_ = pc_;
2744 emit(0xF2); 2766 emit(0xF2);
2745 emit_optional_rex_32(dst, src); 2767 emit_optional_rex_32(dst, src);
2746 emit(0x0F); 2768 emit(0x0F);
2747 emit(0x58); 2769 emit(0x58);
2748 emit_sse_operand(dst, src); 2770 emit_sse_operand(dst, src);
2749 } 2771 }
2750 2772
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
2933 // specially coded on x64 means that it is a relative 32 bit address, as used 2955 // specially coded on x64 means that it is a relative 32 bit address, as used
2934 // by branch instructions. 2956 // by branch instructions.
2935 return (1 << rmode_) & kApplyMask; 2957 return (1 << rmode_) & kApplyMask;
2936 } 2958 }
2937 2959
2938 2960
2939 2961
2940 } } // namespace v8::internal 2962 } } // namespace v8::internal
2941 2963
2942 #endif // V8_TARGET_ARCH_X64 2964 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/x64/assembler-x64.h ('k') | src/x64/codegen-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698