亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? libm_sincosf.s

?? glibc 庫, 不僅可以學習使用庫函數,還可以學習函數的具體實現,是提高功力的好資料
?? S
?? 第 1 頁 / 共 2 頁
字號:
.file "libm_sincosf.s"// Copyright (c) 2002 - 2005, Intel Corporation// All rights reserved.//// Contributed 2002 by the Intel Numerics Group, Intel Corporation//// Redistribution and use in source and binary forms, with or without// modification, are permitted provided that the following conditions are// met://// * Redistributions of source code must retain the above copyright// notice, this list of conditions and the following disclaimer.//// * Redistributions in binary form must reproduce the above copyright// notice, this list of conditions and the following disclaimer in the// documentation and/or other materials provided with the distribution.//// * The name of Intel Corporation may not be used to endorse or promote// products derived from this software without specific prior written// permission.// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.//// Intel Corporation is the author of this code, and requests that all// problem reports or change requests be submitted to it directly at// http://www.intel.com/software/products/opensource/libraries/num.htm.//// History//==============================================================// 02/01/02 Initial version// 02/18/02 Large arguments processing routine is excluded.//          External interface entry points are added// 02/26/02 Added temporary return of results in r8, r9// 03/13/02 Corrected restore of predicate registers// 03/19/02 Added stack unwind around call to __libm_cisf_large// 09/05/02 Work range is widened by reduction strengthen (2 parts of Pi/16)// 02/10/03 Reordered header: .section, .global, .proc, .align// 02/11/04 cisf is moved to the separate file.// 03/31/05 Reformatted delimiters between data tables// API//==============================================================// 1) void sincosf(float, float*s, float*c)// 2) __libm_sincosf - internal LIBM function, that accepts//    argument in f8 and returns cosine through f8, sine through f9//// Overview of operation//==============================================================//// Step 1// ======// Reduce x to region -1/2*pi/2^k ===== 0 ===== +1/2*pi/2^k  where k=4//    divide x by pi/2^k.//    Multiply by 2^k/pi.//    nfloat = Round result to integer (round-to-nearest)//// r = x -  nfloat * pi/2^k//    Do this as (x -  nfloat * HIGH(pi/2^k)) - nfloat * LOW(pi/2^k) for increased accuracy.//    pi/2^k is stored as two numbers that when added make pi/2^k.//       pi/2^k = HIGH(pi/2^k) + LOW(pi/2^k)//    HIGH part is rounded to zero, LOW - to nearest//// x = (nfloat * pi/2^k) + r//    r is small enough that we can use a polynomial approximation//    and is referred to as the reduced argument.//// Step 3// ======// Take the unreduced part and remove the multiples of 2pi.// So nfloat = nfloat (with lower k+1 bits cleared) + lower k+1 bits////    nfloat (with lower k+1 bits cleared) is a multiple of 2^(k+1)//    N * 2^(k+1)//    nfloat * pi/2^k = N * 2^(k+1) * pi/2^k + (lower k+1 bits) * pi/2^k//    nfloat * pi/2^k = N * 2 * pi + (lower k+1 bits) * pi/2^k//    nfloat * pi/2^k = N2pi + M * pi/2^k////// Sin(x) = Sin((nfloat * pi/2^k) + r)//        = Sin(nfloat * pi/2^k) * Cos(r) + Cos(nfloat * pi/2^k) * Sin(r)////          Sin(nfloat * pi/2^k) = Sin(N2pi + Mpi/2^k)//                               = Sin(N2pi)Cos(Mpi/2^k) + Cos(N2pi)Sin(Mpi/2^k)//                               = Sin(Mpi/2^k)////          Cos(nfloat * pi/2^k) = Cos(N2pi + Mpi/2^k)//                               = Cos(N2pi)Cos(Mpi/2^k) + Sin(N2pi)Sin(Mpi/2^k)//                               = Cos(Mpi/2^k)//// Sin(x) = Sin(Mpi/2^k) Cos(r) + Cos(Mpi/2^k) Sin(r)////// Step 4// ======// 0 <= M < 2^(k+1)// There are 2^(k+1) Sin entries in a table.// There are 2^(k+1) Cos entries in a table.//// Get Sin(Mpi/2^k) and Cos(Mpi/2^k) by table lookup.////// Step 5// ======// Calculate Cos(r) and Sin(r) by polynomial approximation.//// Cos(r) = 1 + r^2 q1  + r^4 q2 = Series for Cos// Sin(r) = r + r^3 p1  + r^5 p2 = Series for Sin//// and the coefficients q1, q2 and p1, p2 are stored in a table////// Calculate// Sin(x) = Sin(Mpi/2^k) Cos(r) + Cos(Mpi/2^k) Sin(r)//// as follows////    S[m] = Sin(Mpi/2^k) and C[m] = Cos(Mpi/2^k)//    rsq = r*r//////    P = p1 + r^2p2//    Q = q1 + r^2q2////       rcub = r * rsq//       Sin(r) = r + rcub * P//              = r + r^3p1  + r^5p2 = Sin(r)////       P =  r + rcub * P////    Answer = S[m] Cos(r) + C[m] P////       Cos(r) = 1 + rsq Q//       Cos(r) = 1 + r^2 Q//       Cos(r) = 1 + r^2 (q1 + r^2q2)//       Cos(r) = 1 + r^2q1 + r^4q2////       S[m] Cos(r) = S[m](1 + rsq Q)//       S[m] Cos(r) = S[m] + S[m] rsq Q//       S[m] Cos(r) = S[m] + s_rsq Q//       Q           = S[m] + s_rsq Q//// Then,////    Answer = Q + C[m] P// Registers used//==============================================================// general input registers:// r14 -> r19// r32 -> r49// predicate registers used:// p6 -> p14// floating-point registers used// f9 -> f15// f32 -> f100// Assembly macros//==============================================================cisf_Arg                     = f8cisf_Sin_res                 = f9cisf_Cos_res                 = f8cisf_NORM_f8                 = f10cisf_W                       = f11cisf_int_Nfloat              = f12cisf_Nfloat                  = f13cisf_r                       = f14cisf_r_exact                 = f68cisf_rsq                     = f15cisf_rcub                    = f32cisf_Inv_Pi_by_16            = f33cisf_Pi_by_16_hi             = f34cisf_Pi_by_16_lo             = f35cisf_Inv_Pi_by_64            = f36cisf_Pi_by_64_hi             = f37cisf_Pi_by_64_lo             = f38cisf_P1                      = f39cisf_Q1                      = f40cisf_P2                      = f41cisf_Q2                      = f42cisf_P3                      = f43cisf_Q3                      = f44cisf_P4                      = f45cisf_Q4                      = f46cisf_P_temp1                 = f47cisf_P_temp2                 = f48cisf_Q_temp1                 = f49cisf_Q_temp2                 = f50cisf_P                       = f51cisf_SIG_INV_PI_BY_16_2TO61  = f52cisf_RSHF_2TO61              = f53cisf_RSHF                    = f54cisf_2TOM61                  = f55cisf_NFLOAT                  = f56cisf_W_2TO61_RSH             = f57cisf_tmp                     = f58cisf_Sm_sin                  = f59cisf_Cm_sin                  = f60cisf_Sm_cos                  = f61cisf_Cm_cos                  = f62cisf_srsq_sin                = f63cisf_srsq_cos                = f64cisf_Q_sin                   = f65cisf_Q_cos                   = f66cisf_Q                       = f67/////////////////////////////////////////////////////////////cisf_pResSin                 = r33cisf_pResCos                 = r34cisf_exp_limit               = r35cisf_r_signexp               = r36cisf_AD_beta_table           = r37cisf_r_sincos                = r38cisf_r_exp                   = r39cisf_r_17_ones               = r40cisf_GR_sig_inv_pi_by_16     = r14cisf_GR_rshf_2to61           = r15cisf_GR_rshf                 = r16cisf_GR_exp_2tom61           = r17cisf_GR_n                    = r18cisf_GR_n_sin                = r19cisf_GR_m_sin                = r41cisf_GR_32m_sin              = r41cisf_GR_n_cos                = r42cisf_GR_m_cos                = r43cisf_GR_32m_cos              = r43cisf_AD_2_sin                = r44cisf_AD_2_cos                = r45cisf_gr_tmp                  = r46GR_SAVE_B0                   = r47GR_SAVE_GP                   = r48rB0_SAVED                    = r49GR_SAVE_PFS                  = r50GR_SAVE_PR                   = r51cisf_AD_1                    = r52RODATA.align 16// Pi/16 partsLOCAL_OBJECT_START(double_cisf_pi)   data8 0xC90FDAA22168C234, 0x00003FFC // pi/16 1st part   data8 0xC4C6628B80DC1CD1, 0x00003FBC // pi/16 2nd partLOCAL_OBJECT_END(double_cisf_pi)// Coefficients for polynomialsLOCAL_OBJECT_START(double_cisf_pq_k4)   data8 0x3F810FABB668E9A2 // P2   data8 0x3FA552E3D6DE75C9 // Q2   data8 0xBFC555554447BC7F // P1   data8 0xBFDFFFFFC447610A // Q1LOCAL_OBJECT_END(double_cisf_pq_k4)// Sincos table (S[m], C[m])LOCAL_OBJECT_START(double_sin_cos_beta_k4)    data8 0x0000000000000000 // sin ( 0 Pi / 16 )    data8 0x3FF0000000000000 // cos ( 0 Pi / 16 )//    data8 0x3FC8F8B83C69A60B // sin ( 1 Pi / 16 )    data8 0x3FEF6297CFF75CB0 // cos ( 1 Pi / 16 )//    data8 0x3FD87DE2A6AEA963 // sin ( 2 Pi / 16 )    data8 0x3FED906BCF328D46 // cos ( 2 Pi / 16 )//    data8 0x3FE1C73B39AE68C8 // sin ( 3 Pi / 16 )    data8 0x3FEA9B66290EA1A3 // cos ( 3 Pi / 16 )//    data8 0x3FE6A09E667F3BCD // sin ( 4 Pi / 16 )    data8 0x3FE6A09E667F3BCD // cos ( 4 Pi / 16 )//    data8 0x3FEA9B66290EA1A3 // sin ( 5 Pi / 16 )    data8 0x3FE1C73B39AE68C8 // cos ( 5 Pi / 16 )//    data8 0x3FED906BCF328D46 // sin ( 6 Pi / 16 )    data8 0x3FD87DE2A6AEA963 // cos ( 6 Pi / 16 )//    data8 0x3FEF6297CFF75CB0 // sin ( 7 Pi / 16 )    data8 0x3FC8F8B83C69A60B // cos ( 7 Pi / 16 )//    data8 0x3FF0000000000000 // sin ( 8 Pi / 16 )    data8 0x0000000000000000 // cos ( 8 Pi / 16 )//    data8 0x3FEF6297CFF75CB0 // sin ( 9 Pi / 16 )    data8 0xBFC8F8B83C69A60B // cos ( 9 Pi / 16 )//    data8 0x3FED906BCF328D46 // sin ( 10 Pi / 16 )    data8 0xBFD87DE2A6AEA963 // cos ( 10 Pi / 16 )//    data8 0x3FEA9B66290EA1A3 // sin ( 11 Pi / 16 )    data8 0xBFE1C73B39AE68C8 // cos ( 11 Pi / 16 )//    data8 0x3FE6A09E667F3BCD // sin ( 12 Pi / 16 )    data8 0xBFE6A09E667F3BCD // cos ( 12 Pi / 16 )//    data8 0x3FE1C73B39AE68C8 // sin ( 13 Pi / 16 )    data8 0xBFEA9B66290EA1A3 // cos ( 13 Pi / 16 )//    data8 0x3FD87DE2A6AEA963 // sin ( 14 Pi / 16 )    data8 0xBFED906BCF328D46 // cos ( 14 Pi / 16 )//    data8 0x3FC8F8B83C69A60B // sin ( 15 Pi / 16 )    data8 0xBFEF6297CFF75CB0 // cos ( 15 Pi / 16 )//    data8 0x0000000000000000 // sin ( 16 Pi / 16 )    data8 0xBFF0000000000000 // cos ( 16 Pi / 16 )//    data8 0xBFC8F8B83C69A60B // sin ( 17 Pi / 16 )    data8 0xBFEF6297CFF75CB0 // cos ( 17 Pi / 16 )//    data8 0xBFD87DE2A6AEA963 // sin ( 18 Pi / 16 )    data8 0xBFED906BCF328D46 // cos ( 18 Pi / 16 )//    data8 0xBFE1C73B39AE68C8 // sin ( 19 Pi / 16 )    data8 0xBFEA9B66290EA1A3 // cos ( 19 Pi / 16 )//    data8 0xBFE6A09E667F3BCD // sin ( 20 Pi / 16 )    data8 0xBFE6A09E667F3BCD // cos ( 20 Pi / 16 )//    data8 0xBFEA9B66290EA1A3 // sin ( 21 Pi / 16 )    data8 0xBFE1C73B39AE68C8 // cos ( 21 Pi / 16 )//    data8 0xBFED906BCF328D46 // sin ( 22 Pi / 16 )    data8 0xBFD87DE2A6AEA963 // cos ( 22 Pi / 16 )//    data8 0xBFEF6297CFF75CB0 // sin ( 23 Pi / 16 )    data8 0xBFC8F8B83C69A60B // cos ( 23 Pi / 16 )//    data8 0xBFF0000000000000 // sin ( 24 Pi / 16 )    data8 0x0000000000000000 // cos ( 24 Pi / 16 )//    data8 0xBFEF6297CFF75CB0 // sin ( 25 Pi / 16 )    data8 0x3FC8F8B83C69A60B // cos ( 25 Pi / 16 )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二区三区蜜桃视频| 亚洲国产精品一区二区尤物区| 又紧又大又爽精品一区二区| 日产国产欧美视频一区精品| 91麻豆成人久久精品二区三区| 日韩欧美国产系列| 亚洲精品视频一区| 成人一区二区三区中文字幕| 日韩欧美一区二区免费| 亚洲与欧洲av电影| 97久久精品人人爽人人爽蜜臀| 精品少妇一区二区三区日产乱码| 亚洲国产精品欧美一二99| 99在线视频精品| 中文字幕免费不卡在线| 狠狠色狠狠色综合| 日韩一区二区不卡| 日韩国产欧美三级| 欧美视频中文字幕| 亚洲成va人在线观看| av激情综合网| 欧美高清在线视频| 韩国三级在线一区| 精品国产乱码久久久久久夜甘婷婷| 丝袜美腿一区二区三区| 欧美无砖专区一中文字| 亚洲精品国产精品乱码不99| 成人动漫一区二区三区| 国产日韩欧美精品综合| 国产激情视频一区二区三区欧美| 日韩欧美国产精品一区| 日本一道高清亚洲日美韩| 欧美日韩一区不卡| 亚洲乱码国产乱码精品精98午夜| 99九九99九九九视频精品| 国产精品色一区二区三区| 国产精品99久久久久久久vr| 91精品国产一区二区| 三级成人在线视频| 91精品国产色综合久久ai换脸| 视频在线观看一区| 日韩精品一区二区三区视频播放| 精品中文字幕一区二区| 精品久久久久久最新网址| 国产一区二区三区最好精华液| 欧美不卡激情三级在线观看| 国内外成人在线| 国产欧美日本一区二区三区| 高清国产一区二区| 亚洲免费观看高清| 欧美电影一区二区| 狠狠色丁香久久婷婷综合丁香| 精品日韩成人av| 国产1区2区3区精品美女| 国产精品毛片无遮挡高清| 色婷婷狠狠综合| 五月激情综合网| 欧美成人vps| 成年人国产精品| 一区2区3区在线看| 欧美xxxxxxxxx| av激情综合网| 男人操女人的视频在线观看欧美| 精品成人一区二区三区四区| 成人免费毛片aaaaa**| 国产精品久久久久久久久免费丝袜| 色国产综合视频| 蜜臀av性久久久久av蜜臀妖精| 久久久久国产成人精品亚洲午夜| 成人av在线资源网站| 亚洲在线视频一区| 久久久久久久一区| 91黄视频在线| 国产一区在线精品| 亚洲精品欧美激情| 久久免费的精品国产v∧| 色视频一区二区| 韩日av一区二区| 亚洲免费观看高清| 欧美精品一区男女天堂| 色诱亚洲精品久久久久久| 日韩成人一级片| 国产精品第五页| 欧美www视频| 欧美自拍丝袜亚洲| 成人激情文学综合网| 日韩影院在线观看| 中文字幕亚洲区| 精品久久久久久亚洲综合网| 色诱视频网站一区| 国产精品99久久久久久宅男| 午夜电影一区二区三区| 国产精品人成在线观看免费 | 亚洲一级不卡视频| 久久久噜噜噜久久人人看| 欧美日韩精品电影| 成人综合婷婷国产精品久久| 美女久久久精品| 亚洲午夜在线电影| 国产精品免费久久| 精品国精品自拍自在线| 欧美三级欧美一级| 99精品欧美一区二区三区小说 | 国产毛片精品国产一区二区三区| 一区二区三区欧美| 中文字幕一区二| 国产欧美综合在线观看第十页| 91精品国产91久久久久久最新毛片 | 欧美一区二区三区的| 欧美图区在线视频| 91福利社在线观看| 91丝袜美女网| 成人18视频在线播放| 成人污污视频在线观看| 国产成人免费视频| 国产sm精品调教视频网站| 韩国女主播成人在线观看| 国产一区二区三区视频在线播放| 日本成人在线网站| 男人的j进女人的j一区| 美国欧美日韩国产在线播放| 久久 天天综合| 久久国产综合精品| 国模无码大尺度一区二区三区 | 亚洲午夜日本在线观看| 五月婷婷综合网| 午夜国产精品一区| 另类调教123区| 久久国产精品色婷婷| 精东粉嫩av免费一区二区三区| 精品一区二区国语对白| 国产九九视频一区二区三区| 国产寡妇亲子伦一区二区| 国产不卡高清在线观看视频| 成人激情视频网站| 91极品美女在线| 91精品国产综合久久婷婷香蕉 | 日韩—二三区免费观看av| 视频一区国产视频| 国产综合色精品一区二区三区| 国产精品一区二区免费不卡| 成人福利在线看| 欧美伊人精品成人久久综合97| 欧美在线free| 欧美不卡视频一区| 欧美激情一区二区三区四区| 日韩理论电影院| 亚洲丶国产丶欧美一区二区三区| 日本成人在线电影网| 国产乱码精品一品二品| 91网站在线播放| 欧美浪妇xxxx高跟鞋交| 日韩网站在线看片你懂的| 国产色综合久久| 亚洲一区二区精品久久av| 美美哒免费高清在线观看视频一区二区 | 蜜桃视频在线一区| 波多野结衣91| 欧美一级国产精品| 国产精品国产三级国产普通话三级| 亚洲精品中文字幕乱码三区| 视频在线观看一区二区三区| 国产成人午夜精品5599| 色婷婷激情一区二区三区| 日韩精品一区二区三区在线观看| 国产精品情趣视频| 麻豆精品视频在线观看视频| 91理论电影在线观看| 欧美精品一区男女天堂| 亚洲成a人片在线不卡一二三区 | 日韩中文字幕1| 99r精品视频| 精品国产乱码久久久久久牛牛| 亚洲精品老司机| 国产成人午夜99999| 日韩欧美激情四射| 亚洲免费在线视频一区 二区| 九九国产精品视频| 欧美人牲a欧美精品| 国产精品水嫩水嫩| 国产一区二区视频在线播放| 欧美三级电影网站| 亚洲三级电影网站| 国产不卡在线播放| 欧美成人a∨高清免费观看| 性做久久久久久久久| 91尤物视频在线观看| 国产亚洲婷婷免费| 国产真实乱对白精彩久久| 制服丝袜亚洲播放| 性感美女极品91精品| 色香色香欲天天天影视综合网| 国产日韩欧美a| 国产成人一级电影| 国产亚洲综合av| 国产成人亚洲精品狼色在线| 欧美精品一区二| 国产综合色在线| 久久精品一二三| 国产盗摄一区二区|