OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 2901 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2912 | 2912 |
2913 | 2913 |
2914 void LCodeGen::DoMathLog(LUnaryMathOperation* instr) { | 2914 void LCodeGen::DoMathLog(LUnaryMathOperation* instr) { |
2915 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); | 2915 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
2916 TranscendentalCacheStub stub(TranscendentalCache::LOG, | 2916 TranscendentalCacheStub stub(TranscendentalCache::LOG, |
2917 TranscendentalCacheStub::UNTAGGED); | 2917 TranscendentalCacheStub::UNTAGGED); |
2918 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); | 2918 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |
2919 } | 2919 } |
2920 | 2920 |
2921 | 2921 |
| 2922 void LCodeGen::DoMathTan(LUnaryMathOperation* instr) { |
| 2923 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
| 2924 TranscendentalCacheStub stub(TranscendentalCache::TAN, |
| 2925 TranscendentalCacheStub::UNTAGGED); |
| 2926 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |
| 2927 } |
| 2928 |
| 2929 |
2922 void LCodeGen::DoMathCos(LUnaryMathOperation* instr) { | 2930 void LCodeGen::DoMathCos(LUnaryMathOperation* instr) { |
2923 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); | 2931 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
2924 TranscendentalCacheStub stub(TranscendentalCache::COS, | 2932 TranscendentalCacheStub stub(TranscendentalCache::COS, |
2925 TranscendentalCacheStub::UNTAGGED); | 2933 TranscendentalCacheStub::UNTAGGED); |
2926 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); | 2934 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |
2927 } | 2935 } |
2928 | 2936 |
2929 | 2937 |
2930 void LCodeGen::DoMathSin(LUnaryMathOperation* instr) { | 2938 void LCodeGen::DoMathSin(LUnaryMathOperation* instr) { |
2931 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); | 2939 ASSERT(ToDoubleRegister(instr->result()).is(xmm1)); |
(...skipping 19 matching lines...) Expand all Loading... |
2951 break; | 2959 break; |
2952 case kMathPowHalf: | 2960 case kMathPowHalf: |
2953 DoMathPowHalf(instr); | 2961 DoMathPowHalf(instr); |
2954 break; | 2962 break; |
2955 case kMathCos: | 2963 case kMathCos: |
2956 DoMathCos(instr); | 2964 DoMathCos(instr); |
2957 break; | 2965 break; |
2958 case kMathSin: | 2966 case kMathSin: |
2959 DoMathSin(instr); | 2967 DoMathSin(instr); |
2960 break; | 2968 break; |
| 2969 case kMathTan: |
| 2970 DoMathTan(instr); |
| 2971 break; |
2961 case kMathLog: | 2972 case kMathLog: |
2962 DoMathLog(instr); | 2973 DoMathLog(instr); |
2963 break; | 2974 break; |
2964 | 2975 |
2965 default: | 2976 default: |
2966 UNREACHABLE(); | 2977 UNREACHABLE(); |
2967 } | 2978 } |
2968 } | 2979 } |
2969 | 2980 |
2970 | 2981 |
(...skipping 1326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4297 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt); | 4308 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt); |
4298 ASSERT(osr_pc_offset_ == -1); | 4309 ASSERT(osr_pc_offset_ == -1); |
4299 osr_pc_offset_ = masm()->pc_offset(); | 4310 osr_pc_offset_ = masm()->pc_offset(); |
4300 } | 4311 } |
4301 | 4312 |
4302 #undef __ | 4313 #undef __ |
4303 | 4314 |
4304 } } // namespace v8::internal | 4315 } } // namespace v8::internal |
4305 | 4316 |
4306 #endif // V8_TARGET_ARCH_X64 | 4317 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |