• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    支持RISC-V向量指令的匯編器設(shè)計(jì)與實(shí)現(xiàn)*

    2021-01-06 08:16:10朱小龍孫海燕
    關(guān)鍵詞:標(biāo)量測試用例二進(jìn)制

    鄧 平,朱小龍,孫海燕,任 怡

    (國防科技大學(xué)計(jì)算機(jī)學(xué)院,湖南 長沙 410073)

    1 引言

    隨著智能物聯(lián)網(wǎng)AIOT(Artificial Internet Of Things)應(yīng)用需求的日益增長、中美國際貿(mào)易戰(zhàn)的影響以及企業(yè)本身對(duì)成本和技術(shù)創(chuàng)新的追求,RISC-V架構(gòu)以其開放、簡潔、模塊化等特點(diǎn)得到了業(yè)界廣泛關(guān)注。國內(nèi)有多家企業(yè)宣布采用RISC-V架構(gòu)設(shè)計(jì)相關(guān)芯片,包括華為、芯來科技、國防科技大學(xué)、中國科學(xué)院等。在芯片體系結(jié)構(gòu)相關(guān)技術(shù)中,向量指令是提高芯片運(yùn)算性能的重要手段之一。RISC-V聯(lián)盟于2020年5月發(fā)布RISC-V向量擴(kuò)展0.9版本[1]標(biāo)準(zhǔn)草案,給出了RISC-V體系結(jié)構(gòu)的向量指令規(guī)范,為RISC-V體系結(jié)構(gòu)[2]在更高性能的應(yīng)用領(lǐng)域中的推廣提供了支持。

    編譯器、匯編器等芯片編譯工具鏈對(duì)任何一個(gè)硬件架構(gòu)而言,都是構(gòu)筑軟件生態(tài)必不可少的組成部分,編譯環(huán)境的好壞直接決定了該架構(gòu)的用戶數(shù)量和應(yīng)用范圍。目前,RISC-V的配套開發(fā)環(huán)境已經(jīng)很成熟,但在支持向量指令這方面還不夠完善。雖然RISC-V已包含向量指令規(guī)范,但在目前的開源工具鏈代碼中并沒有實(shí)現(xiàn)相關(guān)的向量指令,這在很大程度上影響了RISC-V的應(yīng)用推廣。本文的主要工作是基于RISC-V 0.9版本向量規(guī)范和GNU Binutils開源平臺(tái),討論實(shí)現(xiàn)支持RISC-V向量指令的匯編器關(guān)鍵技術(shù),設(shè)計(jì)并實(shí)現(xiàn)RISC-V向量匯編器。

    2 技術(shù)背景

    2.1 向量指令集的特點(diǎn)

    RISC-V向量指令集是基于基礎(chǔ)指令集的拓展,主要用于支持向量運(yùn)算操作,提高硬件執(zhí)行效率。在RISC-V 0.9版本中,向量指令遵循如表1所示的編碼標(biāo)準(zhǔn)。向量指令[1]主要在標(biāo)量浮點(diǎn)加載(LOAD-FP)、標(biāo)量浮點(diǎn)存儲(chǔ)(STORE-FP)和原子性存儲(chǔ)器操作(AMO)指令的基礎(chǔ)上進(jìn)行拓展定義,另外新增了OP-V類的操作指令。向量的加載和存儲(chǔ)編碼利用了LOAD-FP和STORE-FP的12位立即數(shù)編碼字段(表1第20至31位)[3]的一部分,同時(shí)第25位保留了標(biāo)準(zhǔn)向量掩碼位(vm)作為條件域,大多數(shù)向量指令可以在條件域的掩碼控制下無條件或有條件地執(zhí)行。

    向量指令的源操作數(shù)一般為標(biāo)量或向量,運(yùn)算結(jié)果可存于對(duì)應(yīng)標(biāo)量或向量寄存器中。除立即數(shù)外,向量指令中的標(biāo)量操作數(shù)還可以是向量寄存器的0號(hào)元素,以及通用寄存器或浮點(diǎn)寄存器中存儲(chǔ)的數(shù)據(jù)。按目前規(guī)范約定任何向量寄存器都可以用于保存標(biāo)量。向量操作數(shù)或向量結(jié)果可能會(huì)占用一個(gè)或多個(gè)向量寄存器(向量寄存器組),向量寄存器組始終由組中編號(hào)最小的向量寄存器來指定。

    2.2 GNU Binutils介紹

    GNU[4]是一系列編譯工具[5]的集合,統(tǒng)稱為工具鏈GNU,其在開發(fā)應(yīng)用程序和操作系統(tǒng)中具有重要作用。GNU包括GNU make、GCC(GNU Compiler Collection)、GDB(GNU Debugger)、GNU Binutils。對(duì)RISC-V的向量指令集擴(kuò)展需要借助GNU Binutils工具來完成,同時(shí)在Binultils工具中進(jìn)行一些與RISC-V平臺(tái)對(duì)應(yīng)的修改。采用GNU Binutils主要是因?yàn)榘珺inutils的GNU支持絕大多數(shù)當(dāng)前主流的主機(jī)操作系統(tǒng),其GNU的變種基本都能適用于類Unix操作系統(tǒng)、Linux和Windows操作系統(tǒng)。由于GNU提供了一套完備的工具,故無須過多考慮與其他工具的整合問題。即使需要考慮,由于GNU是開放的,它支持多種開放的目標(biāo)文件格式和調(diào)試格式,存在多種形式的開源C標(biāo)準(zhǔn)庫可以使用,可以和編譯器鏈接器完美整合。

    Table 1 RISC-V vector instruction formats表1 RISC-V向量指令格式

    GNU Binutils是一組二進(jìn)制程序處理工具[6],包含最主要的匯編器as、ld、objdump、readelf等。在Linux環(huán)境下,二進(jìn)制程序主要是指*.o文件和*.elf執(zhí)行文件[7]。as是Binutils的匯編器工具,負(fù)責(zé)將匯編程序轉(zhuǎn)化為目標(biāo)機(jī)器指令;ld是鏈接器,可以將多個(gè)目標(biāo)文件鏈接成一個(gè)可執(zhí)行文件;objdump用于反匯編,將二進(jìn)制文件轉(zhuǎn)換為匯編代碼;readelf用于顯示elf格式可執(zhí)行文件的信息。GNU Binutils包含的匯編器as和鏈接器ld等工具都使用二進(jìn)制文件描述符庫BFD(the Binary File Description library)[8]來操作目標(biāo)文件和庫,如圖1所示。

    Figure 1 Binary toolsets圖1 二進(jìn)制工具集

    3 RISC-V向量匯編器關(guān)鍵技術(shù)

    向量指令的描述和向量寄存器的描述是實(shí)現(xiàn)RISC-V向量匯編器的關(guān)鍵。

    3.1 RISC-V向量指令的描述

    匯編指令與二進(jìn)制指令之間是一一對(duì)應(yīng)的關(guān)系,即直譯的過程。實(shí)現(xiàn)匯編器的重點(diǎn)在于定義好匯編指令集、二進(jìn)制指令集,以及確定好兩者之間的映射轉(zhuǎn)換關(guān)系[9]。首要解決的問題是匯編指令對(duì)應(yīng)的二進(jìn)制指令的編碼問題,RISC-V架構(gòu)定義的標(biāo)準(zhǔn)指令集僅使用了少量的二進(jìn)制指令編碼空間,更多的編碼空間被預(yù)留給用戶作為擴(kuò)展指令使用,本文將利用這些預(yù)留的編碼空間對(duì)向量指令集[10]進(jìn)行編碼。

    表2以指令vadc.vvm為例,描述了向量匯編指令及其對(duì)應(yīng)的二進(jìn)制編碼,其中vd表示目的寄存器,rs1和vs2表示操作數(shù)寄存器,各占用5 bit。將rs1、vs2和vd所在域全部置成0,其他位域保持為默認(rèn)編碼后得到的二進(jìn)制碼就是這條匯編指令的校驗(yàn)值MATCH。當(dāng)指令的rs1、vs2和vd對(duì)應(yīng)位域值為0,其他位值全為1時(shí),得到的二進(jìn)制碼為該指令的MASK掩碼值。指令的MATCH和MASK用于一致性檢查,以校驗(yàn)指令的正確性。表2中最后2行分別為vadc.vvm的MATCH和MASK。

    3.2 向量寄存器的描述

    在向量指令擴(kuò)展[2]中,需將32個(gè)通用向量寄存器v0~v31添加到基本RISC-V的ISA中,每個(gè)通用向量寄存器都有一個(gè)固定狀態(tài)位v-len。如果基本標(biāo)量ISA不包含浮點(diǎn),則還需添加浮點(diǎn)狀態(tài)和控制寄存器fcsr,用來保存向量定點(diǎn)飽和標(biāo)志寄存器vxsat和向量定點(diǎn)舍入模式寄存器vxrm的鏡像。向量定點(diǎn)舍入模式寄存器vxrm具有2位讀寫舍入模式字段,用于指示定點(diǎn)指令的舍入模式,如四舍五入模式、取整模式等,這一特性反映在fcsr高位字段中。向量定點(diǎn)飽和標(biāo)志寄存器vxsat保留單個(gè)讀寫位,該位用于指示定點(diǎn)指令是否需要為了適應(yīng)目標(biāo)格式而必須使輸出值飽和,且vxsat位也反映在fcsr的高位字段中。將vxrm、vxsat等字段打包到fcsr,可以加速對(duì)上下文的保存/恢復(fù)。

    對(duì)于向量類型控制狀態(tài)寄存器vtype,指定其只能被vsetvl{i}[1]指令進(jìn)行更新,其中i為vsetl{i}編碼中高位字段(20~30位)表示的立即數(shù),該寄存器可以提供默認(rèn)類型用于解釋向量寄存器文件內(nèi)容,還可以對(duì)多個(gè)向量寄存器進(jìn)行分組。向量長度寄存器vl只能通過vsetvl{i}和vsetvl指令進(jìn)行更新,該寄存器可以保存一個(gè)無符號(hào)整數(shù),且該整數(shù)用于指定可以被向量指令更新的元素個(gè)數(shù)。若執(zhí)行向量指令時(shí),索引值大于或等于vl寄存器中的值,將清零其目標(biāo)向量寄存器組中的元素。當(dāng)vstart寄存器中的值大于或等于vl寄存器中的值時(shí),不會(huì)更新目標(biāo)向量寄存器組中的任何元素。矢量啟動(dòng)索引控制狀態(tài)寄存器vstart指定向量指令執(zhí)行時(shí)首個(gè)被執(zhí)行元素的索引。通常vstart僅由硬件在向量指令的陷阱上寫入,其值表示執(zhí)行陷阱的元素位置,以及在處理了可恢復(fù)陷阱之后應(yīng)恢復(fù)執(zhí)行的位置。

    Table 2 Calculation method of MATCH and MASK of vector instruction表2 向量指令的MATCH、MASK的計(jì)算方法

    4 RISC-V向量匯編器的實(shí)現(xiàn)與測試

    4.1 RISC-V向量匯編器的實(shí)現(xiàn)

    匯編器[11]的工作主要分為3部分:第1是計(jì)算各標(biāo)號(hào)(lables)的內(nèi)存地址,因?yàn)閰R編器在進(jìn)行指令轉(zhuǎn)換時(shí)需要知道各個(gè)符號(hào)名(symbols)與地址的聯(lián)系。第2是針對(duì)每條匯編語句解析出操作數(shù)、寄存器號(hào)和立即數(shù)數(shù)值等信息,然后轉(zhuǎn)換為對(duì)應(yīng)的二進(jìn)制編碼,再按照當(dāng)前匯編指令模版拼裝成對(duì)應(yīng)機(jī)器碼。最后匯編器將匯編結(jié)果輸出到一個(gè)包含二進(jìn)制機(jī)器指令、數(shù)據(jù)和一些薄記信息的目標(biāo)文件中。RISC-V之前的匯編器已經(jīng)完成了第1項(xiàng)工作,本文只需要針對(duì)向量擴(kuò)展完成后2項(xiàng)工作即可。也就是說,在RISC-V向量擴(kuò)展中,首先對(duì)一條指令進(jìn)行拆分,將指令名稱與寄存器/操作數(shù)分開;然后通過指令描述進(jìn)行一致性檢查校驗(yàn),當(dāng)未出現(xiàn)校驗(yàn)錯(cuò)誤時(shí),通過查找hash表識(shí)別指令并將其轉(zhuǎn)換成二進(jìn)制字符串,并根據(jù)對(duì)指令的描述檢查寄存器/操作數(shù)是否符合操作規(guī)范,完成對(duì)該條指令的處理,且依照制定的法則將其轉(zhuǎn)換成二進(jìn)制格式;最后采用字符串拼接的方式打印出處理結(jié)果,其流程如圖2所示。RISC-V的向量指令的添加也將依據(jù)上述步驟完成。

    Figure 2 Flow chart of assembly instruction圖2 匯編指令流程

    4.1.1 向量寄存器描述

    RISC-V聯(lián)盟發(fā)表的關(guān)于向量擴(kuò)展的0.9標(biāo)準(zhǔn),新增了32個(gè)通用向量寄存器和5個(gè)控制和狀態(tài)寄存器CSR。所有的通用向量寄存器定義在文件riscv-opc.c的結(jié)構(gòu)體數(shù)組riscv_vpr_names_numeric[NVPR]中,并且將這些向量寄存器添加到hash表中,故該數(shù)組成員可在解析器初始化的過程中根據(jù)寄存器名字被索引到hash表中,從而便于程序查找、匹配和調(diào)用。向量寄存器的描述代碼如下所示:

    const char * const riscv_vpr_names_numeric[NVPR]=

    {

    "v0","v1","v2","v3","v4","v5","v6","v7","v8","v9","v10","v11","v12","v13","v14","v15","v16","v17","v18","v19","v20","v21","v22","v23","v24","v25","v26","v27","v28","v29","v30","v31"

    };

    控制和狀態(tài)寄存器CSR類寄存器則定義在riscv-opc.h文件中。

    4.1.2 向量指令描述

    RISC-V現(xiàn)有指令集的所有指令和架構(gòu)都聲明在riscv-opc.h文件中,故向量指令集指令和架構(gòu)也聲明在該文件中,因此只需在riscv-opc.h文件中添加向量指令的MATCH、MASK和DECLARE_INSN便可完成聲明。在添加向量指令和架構(gòu)時(shí)可引用向量擴(kuò)展0.9標(biāo)準(zhǔn)的向量指令,也可根據(jù)實(shí)際需求編寫向量指令,3.1節(jié)已給出關(guān)于向量指令的MATCH和MASK的計(jì)算方法。

    riscv-opc.c文件中定義了riscv_opcodes[ ],RISC-V指令集的所有指令都可在這個(gè)結(jié)構(gòu)體數(shù)組中找到。需要將向量指令的相關(guān)信息按name,xlen,isa,operands,match,mask,match_func,pinfo的順序在數(shù)組riscv_opcodes[ ]中聲明,才能實(shí)現(xiàn)編譯。向量指令的描述代碼如下所示:

    const struct riscv_opcode riscv_opcodes[]=

    {

    /*name,xlen,isa,operands,match,mask,match_func,pinfo.*/

    {"vfmul.vf",0,{"V",0},"VD,VS,VT",

    MATCH_VFMUL_VF|MASK_RM,MATCH_VFMUL_VF|MASK_RM,match_opcode,0},

    {"vadd.vv",0,{"V",0},"VD,VS,VT",

    MATCH_VADD_VV,MASK_VADD_VV,

    match_opcode,0},

    {"vadc.vvm",0{"V",0}"VD,VS,VT",

    MATCH_VADC_VVM,MASK_VADC_VVM,

    match_opcode,0},

    {0,0,{0},0,0,0,0,0}

    };

    4.1.3 相關(guān)配置信息描述

    match_opcode、match_never、match_rd_nonzero等match_*類函數(shù),是RISC-V向量擴(kuò)展中的關(guān)鍵函數(shù),此類函數(shù)主要根據(jù)riscv_opcodes[ ]數(shù)組中對(duì)向量指令match_func部分的描述進(jìn)行匹配。這些函數(shù)根據(jù)指令的MATCH、MASK及設(shè)定的一些需求規(guī)則來對(duì)*.s文件中的指令進(jìn)行一致性檢查,檢查是否符合相關(guān)指令描述及約束規(guī)則,并根據(jù)match_*類函數(shù)返回的值判斷一致性檢查是否正確,若返回值錯(cuò)誤則匯編器報(bào)錯(cuò),并終止后續(xù)操作。

    一致性檢查結(jié)束后,riscv_ip函數(shù)會(huì)根據(jù)*.s文件中該指令的操作數(shù)、寄存器等信息判斷是否符合指令的描述。比如:判斷指令的源操作數(shù)是否為常數(shù)/寄存器,判斷寄存器的區(qū)間是否符合要求,判斷指令的其中一個(gè)操作數(shù)是否是地址表達(dá)式等。若滿足條件,匯編器會(huì)將指令轉(zhuǎn)換成二進(jìn)制格式,并用INSERT_OPERAND函數(shù)將字符串拼接起來,形成最終的二進(jìn)制機(jī)器指令。

    4.2 測試結(jié)果

    測試用例1選擇了通用的向量加法指令,用于測試向量匯編到目標(biāo)代碼的正確性。測試用例2采用包含分支、循環(huán)及可向量化特性的for循環(huán)進(jìn)行測試,用來對(duì)比標(biāo)量與向量匯編輸出。RISC-V指令集采用功能模塊化的思想實(shí)現(xiàn),故在測試時(shí)需通過-march選項(xiàng)來指定RISC-V所支持的目標(biāo)模塊化指令集的組合,本文主要完成了基于RISC-V的向量指令的實(shí)現(xiàn),除使用-march選項(xiàng)實(shí)現(xiàn)基本整數(shù)指令子集“i”的強(qiáng)制添加,還需添加待實(shí)現(xiàn)的向量指令子集“v”。

    測試用例1向量匯編指令測試。

    .text

    vadc.vvm v3,v5,v7

    vadc.vvm v15,v1,v3

    vadc.vvm v2,v6,v8

    測試結(jié)果1(匯編與反匯編)如圖3所示。

    Figure 3 Test result of test case 1圖3 測試用例1的測試結(jié)果

    測試用例2for循環(huán)加法測試。

    main()

    {

    inta[64];

    intb[64];

    intc[64];

    for(inti=0;i<64;i++)

    a[i]=b[i]+c[i];

    printf("%d",a[31]);

    }

    標(biāo)量匯編輸出結(jié)果如下:

    main:

    ?

    lw a5,-20(s0)

    slli a5,a5,2

    addi a4,s0,-16

    add a5,a4,a5

    lw a4,-516(a5)

    lw a5,-20(s0)

    slli a5,a5,2

    addi a3,s0,-16

    add a5,a3,a5

    lw a5,-772(a5)

    add a4,a4,a5

    lw a5,-20(s0)

    slli a5,a5,2

    addi a3,s0,-16

    add a5,a3,a5

    sw a4,-260(a5)

    lw a5,-20(s0)

    addi a5,a5,1

    sw a5,-20(s0)

    ?

    向量匯編輸出結(jié)果如下:

    main:

    ?

    vlxw.v v12,(s0),v18

    vsll.vi v12,v12,2

    vadd.vx v13,v19,s0

    vadd.vv v12,v13,v12

    vlxw.v v13,(s0),v12

    vlxw.v v12,(s0),v18

    vsll.vi v12,v12,2

    vadd.vx v14,v20,s0

    vadd.vv v12,v14,v12

    vlxw.v v14,(s0),v12

    vadd.vv v13,v13,v14

    vlxw.v v12,(s0),v18

    vsll.vi v12,v12,2

    vadd.vx v14,v21,s0

    vadd.vv v12,v14,v12

    vsxw.v v13,(s0),v12

    vlxw.v v12,(s0),v18

    vadd.vi v12,v12,1

    vsxw.v v12,(s0),v12

    ?

    從圖3可以看出,測試用例1的反匯編結(jié)果與測試用例1描述的向量指令一致,故向量指令的目標(biāo)代碼生成正確。測試用例2采用標(biāo)量運(yùn)算時(shí),需要進(jìn)行64*3次數(shù)據(jù)訪存和64次加法運(yùn)算;如果采用向量運(yùn)算,則僅需8*3次數(shù)據(jù)訪存和8次向量加法運(yùn)算。由此可見,增加向量運(yùn)算可以提高編譯器的加速比,故添加支持向量指令的匯編器生成能充分利用硬件資源的目標(biāo)機(jī)器代碼,從而實(shí)現(xiàn)性能提升。

    綜合以上結(jié)果分析,向量運(yùn)算可以提升編譯器性能,匯編器能支持向量指令對(duì)應(yīng)于目標(biāo)平臺(tái)的目標(biāo)代碼生成,從而能夠在目標(biāo)平臺(tái)上正確執(zhí)行。

    5 結(jié)束語

    本文通過分析RISC-V向量指令、向量寄存器的特點(diǎn)及相關(guān)配置信息,基于GNU的Binutils匯編器設(shè)計(jì)并實(shí)現(xiàn)了支持RISC-V向量指令的匯編器,該匯編器可完成向量指令匯編和反匯編工作,其實(shí)現(xiàn)可為其他指令模塊的擴(kuò)展提供參考。由于向量運(yùn)算可以有效地提高計(jì)算機(jī)的運(yùn)算效率,減少不必要的硬件開銷,故在RISC-V架構(gòu)上實(shí)現(xiàn)向量指令集的擴(kuò)展及支持向量指令的匯編器是一項(xiàng)極具意義的工作。

    猜你喜歡
    標(biāo)量測試用例二進(jìn)制
    用二進(jìn)制解一道高中數(shù)學(xué)聯(lián)賽數(shù)論題
    基于SmartUnit的安全通信系統(tǒng)單元測試用例自動(dòng)生成
    一種高效的橢圓曲線密碼標(biāo)量乘算法及其實(shí)現(xiàn)
    有趣的進(jìn)度
    二進(jìn)制在競賽題中的應(yīng)用
    基于混合遺傳算法的回歸測試用例集最小化研究
    一種靈活的橢圓曲線密碼并行化方法
    基于依賴結(jié)構(gòu)的測試用例優(yōu)先級(jí)技術(shù)
    單調(diào)Minkowski泛函與Henig真有效性的標(biāo)量化
    標(biāo)量電子能級(jí)束縛態(tài)的計(jì)算
    999久久久国产精品视频| 午夜福利视频在线观看免费| 国产成人精品福利久久| 国产精品一国产av| 啦啦啦在线免费观看视频4| 久久人人爽人人片av| 亚洲国产看品久久| 午夜福利网站1000一区二区三区| 亚洲综合色网址| 欧美日韩国产mv在线观看视频| 亚洲国产欧美日韩在线播放| 亚洲三级黄色毛片| 久久久久久久久久久久大奶| 国产精品一国产av| 国产成人精品婷婷| 免费在线观看视频国产中文字幕亚洲 | 久久精品国产鲁丝片午夜精品| 蜜桃在线观看..| 午夜福利网站1000一区二区三区| 精品久久蜜臀av无| av女优亚洲男人天堂| 极品少妇高潮喷水抽搐| 免费观看av网站的网址| 久久久久国产一级毛片高清牌| 丝袜美足系列| 亚洲精品一区蜜桃| 精品国产乱码久久久久久男人| 日韩制服骚丝袜av| 高清欧美精品videossex| 国产在线一区二区三区精| 亚洲国产日韩一区二区| 看非洲黑人一级黄片| 人人澡人人妻人| 日韩一区二区三区影片| 老汉色av国产亚洲站长工具| 最新中文字幕久久久久| 精品少妇内射三级| 国产野战对白在线观看| 男女下面插进去视频免费观看| 国产一区亚洲一区在线观看| av女优亚洲男人天堂| 久久狼人影院| 1024视频免费在线观看| 美女xxoo啪啪120秒动态图| 秋霞在线观看毛片| 高清视频免费观看一区二区| 欧美bdsm另类| 精品国产国语对白av| 久久人人97超碰香蕉20202| 九草在线视频观看| 亚洲av.av天堂| 王馨瑶露胸无遮挡在线观看| 久久久久久久亚洲中文字幕| 精品福利永久在线观看| 久久久久人妻精品一区果冻| 日韩一区二区三区影片| 精品酒店卫生间| 美女主播在线视频| 9191精品国产免费久久| 亚洲欧美色中文字幕在线| av.在线天堂| 99久久中文字幕三级久久日本| av国产久精品久网站免费入址| 久久人人97超碰香蕉20202| 久久久国产精品麻豆| 亚洲av成人精品一二三区| 久久韩国三级中文字幕| 国产在线观看jvid| 18美女黄网站色大片免费观看| 夫妻午夜视频| 精品一区二区三区视频在线观看免费 | 一边摸一边抽搐一进一小说| 亚洲精品久久午夜乱码| 婷婷精品国产亚洲av在线| 精品久久久久久久毛片微露脸| 精品无人区乱码1区二区| 色综合婷婷激情| 亚洲精品在线观看二区| 精品福利永久在线观看| 国产aⅴ精品一区二区三区波| 一二三四在线观看免费中文在| 国产成人系列免费观看| 国产蜜桃级精品一区二区三区| 久久久久国产精品人妻aⅴ院| 一边摸一边抽搐一进一出视频| 每晚都被弄得嗷嗷叫到高潮| 精品一区二区三卡| av有码第一页| 18禁美女被吸乳视频| av中文乱码字幕在线| 久久精品国产清高在天天线| 午夜福利在线观看吧| 久久久久久亚洲精品国产蜜桃av| 9191精品国产免费久久| 精品电影一区二区在线| 日韩欧美一区二区三区在线观看| 女性生殖器流出的白浆| 香蕉国产在线看| 久久久久久久久免费视频了| 国产精品98久久久久久宅男小说| 国产野战对白在线观看| 99精品欧美一区二区三区四区| 在线观看午夜福利视频| av网站在线播放免费| 午夜日韩欧美国产| 黄色 视频免费看| 丰满的人妻完整版| 国产有黄有色有爽视频| bbb黄色大片| 夜夜躁狠狠躁天天躁| 亚洲成人免费电影在线观看| 欧美黄色片欧美黄色片| 99riav亚洲国产免费| av天堂久久9| 又紧又爽又黄一区二区| 国产高清激情床上av| 国产精品 国内视频| 色婷婷av一区二区三区视频| 美国免费a级毛片| 最好的美女福利视频网| 男女床上黄色一级片免费看| 在线观看免费日韩欧美大片| 两个人看的免费小视频| 欧美激情久久久久久爽电影 | 精品一区二区三区视频在线观看免费 | 久久久久久免费高清国产稀缺| 男女午夜视频在线观看| 91精品三级在线观看| 国产黄色免费在线视频| 欧美另类亚洲清纯唯美| 欧美激情久久久久久爽电影 | 亚洲少妇的诱惑av| 一进一出好大好爽视频| 国产三级黄色录像| 真人一进一出gif抽搐免费| 91老司机精品| 妹子高潮喷水视频| 日本黄色日本黄色录像| 久99久视频精品免费| xxxhd国产人妻xxx| 91字幕亚洲| 亚洲av电影在线进入| 国产色视频综合| www.熟女人妻精品国产| 黑人巨大精品欧美一区二区mp4| 日韩成人在线观看一区二区三区| 90打野战视频偷拍视频| 精品久久久久久电影网| 99久久99久久久精品蜜桃| 18禁观看日本| 一个人免费在线观看的高清视频| 久久午夜亚洲精品久久| 伦理电影免费视频| 国产精品免费视频内射| 久热这里只有精品99| 亚洲七黄色美女视频| 久久久久久亚洲精品国产蜜桃av| 咕卡用的链子| 日韩成人在线观看一区二区三区| 国产有黄有色有爽视频| 国产成人欧美在线观看| 久久精品国产综合久久久| 亚洲精品一区av在线观看| 国产午夜精品久久久久久| 久久亚洲真实| 在线观看免费午夜福利视频| 丰满迷人的少妇在线观看| 777久久人妻少妇嫩草av网站| 色在线成人网| 淫秽高清视频在线观看| 中文字幕人妻熟女乱码| 成人18禁高潮啪啪吃奶动态图| 国产精品98久久久久久宅男小说| 久久国产精品男人的天堂亚洲| 黑丝袜美女国产一区| 18禁黄网站禁片午夜丰满| 50天的宝宝边吃奶边哭怎么回事| 欧美成人午夜精品| 精品乱码久久久久久99久播| 18禁裸乳无遮挡免费网站照片 | avwww免费| 波多野结衣一区麻豆| 一本综合久久免费| 亚洲熟妇中文字幕五十中出 | 他把我摸到了高潮在线观看| 亚洲免费av在线视频| 变态另类成人亚洲欧美熟女 | 久久这里只有精品19| 亚洲色图av天堂| 一二三四社区在线视频社区8| 最新在线观看一区二区三区| 亚洲欧美日韩另类电影网站| 欧美激情高清一区二区三区| 我的亚洲天堂| 国产野战对白在线观看| av福利片在线| 国产亚洲av高清不卡| videosex国产| 黄色a级毛片大全视频| 亚洲精品一区av在线观看| 国产黄色免费在线视频| 国产精品乱码一区二三区的特点 | 麻豆国产av国片精品| 超碰成人久久| 90打野战视频偷拍视频| 午夜免费鲁丝| 他把我摸到了高潮在线观看| 亚洲一区高清亚洲精品| 亚洲一区二区三区色噜噜 | 麻豆一二三区av精品| av在线播放免费不卡| 国产熟女午夜一区二区三区| 黄色成人免费大全| 18禁美女被吸乳视频| 精品国产乱子伦一区二区三区| 无遮挡黄片免费观看| 欧美精品一区二区免费开放| 午夜激情av网站| 视频区欧美日本亚洲| 亚洲男人的天堂狠狠| ponron亚洲| av网站免费在线观看视频| 免费一级毛片在线播放高清视频 | 一级,二级,三级黄色视频| 国产成人免费无遮挡视频| 精品一品国产午夜福利视频| 午夜老司机福利片| 色哟哟哟哟哟哟| 久久精品国产亚洲av高清一级| 夜夜躁狠狠躁天天躁| 国产又爽黄色视频| 精品国产一区二区久久| 久久精品91蜜桃| 黄频高清免费视频| 亚洲中文日韩欧美视频| 99国产精品免费福利视频| 大码成人一级视频| 日本五十路高清| 久久九九热精品免费| 欧美性长视频在线观看| 99精国产麻豆久久婷婷| 免费一级毛片在线播放高清视频 | 超色免费av| 国产成+人综合+亚洲专区| 日本精品一区二区三区蜜桃| www.熟女人妻精品国产| 亚洲国产看品久久| 亚洲免费av在线视频| 老汉色∧v一级毛片| 亚洲一码二码三码区别大吗| 久久国产亚洲av麻豆专区| 午夜福利一区二区在线看| e午夜精品久久久久久久| 日本黄色视频三级网站网址| 大型av网站在线播放| 色综合婷婷激情| 亚洲第一青青草原| 在线播放国产精品三级| 一区福利在线观看| 自拍欧美九色日韩亚洲蝌蚪91| 国产高清视频在线播放一区| 黄片大片在线免费观看| 麻豆成人av在线观看| 香蕉丝袜av| 免费在线观看日本一区| 深夜精品福利| 成人影院久久| 国产蜜桃级精品一区二区三区| 欧美黄色淫秽网站| 午夜免费成人在线视频| 国产极品粉嫩免费观看在线| 老汉色∧v一级毛片| a级毛片在线看网站| 欧美乱色亚洲激情| 视频区欧美日本亚洲| 黑人欧美特级aaaaaa片| 精品国产美女av久久久久小说| 欧美丝袜亚洲另类 | 长腿黑丝高跟| 色尼玛亚洲综合影院| 久久国产乱子伦精品免费另类| 69精品国产乱码久久久| 久久精品91蜜桃| 免费人成视频x8x8入口观看| 久久精品亚洲熟妇少妇任你| 俄罗斯特黄特色一大片| 色综合婷婷激情| 亚洲精品美女久久久久99蜜臀| 久久久国产一区二区| 亚洲精品一区av在线观看| 99精品久久久久人妻精品| 麻豆成人av在线观看| 大陆偷拍与自拍| 99精品在免费线老司机午夜| 欧美黑人欧美精品刺激| 国产在线精品亚洲第一网站| 精品一品国产午夜福利视频| 美女扒开内裤让男人捅视频| 99re在线观看精品视频| 自拍欧美九色日韩亚洲蝌蚪91| 日本五十路高清| 久99久视频精品免费| 精品国产亚洲在线| 18禁裸乳无遮挡免费网站照片 | 丰满人妻熟妇乱又伦精品不卡| 美女大奶头视频| 日本wwww免费看| 老汉色∧v一级毛片| 丝袜人妻中文字幕| 国产精品免费视频内射| 色精品久久人妻99蜜桃| 国产乱人伦免费视频| 男女之事视频高清在线观看| 日韩免费高清中文字幕av| 久久精品人人爽人人爽视色| 丁香六月欧美| 美女高潮到喷水免费观看| 9色porny在线观看| 欧美黄色片欧美黄色片| 久久人人爽av亚洲精品天堂| 免费在线观看完整版高清| 欧美中文综合在线视频| 一区福利在线观看| 久久伊人香网站| 在线观看一区二区三区激情| 国产精品亚洲av一区麻豆| 好男人电影高清在线观看| 69精品国产乱码久久久| 三上悠亚av全集在线观看| 真人一进一出gif抽搐免费| 久久香蕉精品热| 一级片免费观看大全| 色婷婷久久久亚洲欧美| 满18在线观看网站| 欧美日韩av久久| 亚洲av第一区精品v没综合| 午夜日韩欧美国产| 极品教师在线免费播放| 一本大道久久a久久精品| 黑丝袜美女国产一区| 男男h啪啪无遮挡| 亚洲精品粉嫩美女一区| 真人做人爱边吃奶动态| 国产免费现黄频在线看| 午夜91福利影院| 亚洲av日韩精品久久久久久密| 亚洲欧美日韩高清在线视频| www.999成人在线观看| 两个人看的免费小视频| 91精品三级在线观看| 久久人人爽av亚洲精品天堂| 国产欧美日韩精品亚洲av| 黑人欧美特级aaaaaa片| 久久精品影院6| 淫妇啪啪啪对白视频| 亚洲成人国产一区在线观看| 91老司机精品| 国产午夜精品久久久久久| 国产99久久九九免费精品| www.999成人在线观看| 国产成人av激情在线播放| 欧美老熟妇乱子伦牲交| 高清在线国产一区| 在线免费观看的www视频| 91大片在线观看| a级片在线免费高清观看视频| 色尼玛亚洲综合影院| 国产蜜桃级精品一区二区三区| √禁漫天堂资源中文www| av在线播放免费不卡| 熟女少妇亚洲综合色aaa.| 午夜福利欧美成人| 欧美中文综合在线视频| 久久精品国产清高在天天线| 国产成人av激情在线播放| 男女床上黄色一级片免费看| 日日爽夜夜爽网站| 天天添夜夜摸| 欧美 亚洲 国产 日韩一| 男女之事视频高清在线观看| 老熟妇乱子伦视频在线观看| 久久久久国内视频| 在线观看www视频免费| 久久九九热精品免费| 不卡一级毛片| 人人妻人人澡人人看| 国产深夜福利视频在线观看| 欧美丝袜亚洲另类 | 亚洲国产欧美一区二区综合| 久久香蕉精品热| 亚洲五月婷婷丁香| 一进一出抽搐gif免费好疼 | 精品人妻在线不人妻| 色尼玛亚洲综合影院| 欧美午夜高清在线| 精品国产乱子伦一区二区三区| 天堂√8在线中文| 国产99久久九九免费精品| 亚洲精品国产精品久久久不卡| 91精品国产国语对白视频| 90打野战视频偷拍视频| 国产精品久久久久成人av| 亚洲七黄色美女视频| 激情在线观看视频在线高清| 99riav亚洲国产免费| 妹子高潮喷水视频| 国产成人av教育| 精品人妻1区二区| 桃色一区二区三区在线观看| 国产不卡一卡二| 国产激情久久老熟女| 他把我摸到了高潮在线观看| 日韩大尺度精品在线看网址 | 精品久久久久久电影网| 国产在线观看jvid| 国产片内射在线| 人人妻人人爽人人添夜夜欢视频| 99精品在免费线老司机午夜| 黄色视频,在线免费观看| 国产成+人综合+亚洲专区| 欧美成人性av电影在线观看| 亚洲精品成人av观看孕妇| 久久午夜亚洲精品久久| 99久久人妻综合| 国产精品亚洲av一区麻豆| 亚洲国产看品久久| 久久热在线av| 亚洲av日韩精品久久久久久密| 精品久久久精品久久久| 国产成人精品无人区| 亚洲欧美精品综合一区二区三区| 如日韩欧美国产精品一区二区三区| 99久久久亚洲精品蜜臀av| 午夜福利在线免费观看网站| 在线观看舔阴道视频| а√天堂www在线а√下载| 97人妻天天添夜夜摸| 一区二区三区精品91| 国产高清视频在线播放一区| 国产97色在线日韩免费| 男女做爰动态图高潮gif福利片 | 欧美 亚洲 国产 日韩一| 啪啪无遮挡十八禁网站| 精品国产亚洲在线| 精品久久久久久电影网| 一a级毛片在线观看| 男女高潮啪啪啪动态图| 19禁男女啪啪无遮挡网站| 欧美日韩国产mv在线观看视频| 亚洲国产精品一区二区三区在线| 在线观看免费视频日本深夜| 在线观看免费午夜福利视频| 国产成人系列免费观看| 国产高清国产精品国产三级| 久久久久久大精品| 99国产精品一区二区三区| 一级,二级,三级黄色视频| 国产一区二区三区视频了| 久久久精品国产亚洲av高清涩受| 日韩 欧美 亚洲 中文字幕| 在线播放国产精品三级| 国产午夜精品久久久久久| av电影中文网址| 国产精品久久久久久人妻精品电影| 亚洲午夜精品一区,二区,三区| 超色免费av| 91字幕亚洲| 大码成人一级视频| 午夜福利,免费看| 热re99久久国产66热| 亚洲av第一区精品v没综合| 一级黄色大片毛片| 黄色片一级片一级黄色片| 美女大奶头视频| 成人影院久久| 午夜福利免费观看在线| 日韩精品中文字幕看吧| 久久精品亚洲av国产电影网| 神马国产精品三级电影在线观看 | 精品乱码久久久久久99久播| 99国产精品99久久久久| 99国产精品一区二区蜜桃av| 不卡一级毛片| 午夜精品在线福利| 亚洲精品中文字幕在线视频| 久久香蕉激情| 一级a爱片免费观看的视频| 成年女人毛片免费观看观看9| 新久久久久国产一级毛片| 老司机午夜福利在线观看视频| 亚洲精品一二三| 脱女人内裤的视频| 亚洲精品中文字幕一二三四区| 麻豆成人av在线观看| 国产极品粉嫩免费观看在线| 国产又色又爽无遮挡免费看| 久久青草综合色| 午夜亚洲福利在线播放| 夜夜看夜夜爽夜夜摸 | 免费在线观看影片大全网站| 久久精品国产99精品国产亚洲性色 | 欧美一区二区精品小视频在线| 少妇的丰满在线观看| 宅男免费午夜| 午夜日韩欧美国产| 麻豆av在线久日| 欧美+亚洲+日韩+国产| 美女扒开内裤让男人捅视频| 啦啦啦 在线观看视频| 不卡av一区二区三区| 国产精品成人在线| 亚洲欧美日韩无卡精品| 久久久久久久久免费视频了| 中文字幕另类日韩欧美亚洲嫩草| 久久精品91蜜桃| 亚洲免费av在线视频| 国产91精品成人一区二区三区| 色播在线永久视频| 久久精品成人免费网站| 亚洲专区中文字幕在线| 亚洲国产中文字幕在线视频| av有码第一页| 777久久人妻少妇嫩草av网站| 亚洲人成电影免费在线| 精品一品国产午夜福利视频| 免费一级毛片在线播放高清视频 | 久久伊人香网站| 久久久久久久午夜电影 | 欧美色视频一区免费| 国产成人系列免费观看| 怎么达到女性高潮| а√天堂www在线а√下载| 欧美亚洲日本最大视频资源| 可以免费在线观看a视频的电影网站| 亚洲av美国av| 亚洲va日本ⅴa欧美va伊人久久| 午夜精品在线福利| 国产xxxxx性猛交| av国产精品久久久久影院| 久久中文字幕一级| 精品国产亚洲在线| 中出人妻视频一区二区| 99在线人妻在线中文字幕| 欧美日韩瑟瑟在线播放| 在线观看免费午夜福利视频| 久久精品aⅴ一区二区三区四区| 一级毛片高清免费大全| 中国美女看黄片| 亚洲少妇的诱惑av| 黑人欧美特级aaaaaa片| 亚洲七黄色美女视频| 欧美日韩亚洲高清精品| 欧洲精品卡2卡3卡4卡5卡区| 美女高潮到喷水免费观看| 亚洲精品一卡2卡三卡4卡5卡| 久久这里只有精品19| 午夜免费观看网址| 国产伦一二天堂av在线观看| tocl精华| avwww免费| 在线国产一区二区在线| 超色免费av| 国产精品久久久av美女十八| 亚洲 欧美一区二区三区| cao死你这个sao货| 国产深夜福利视频在线观看| 最新美女视频免费是黄的| 精品国产乱码久久久久久男人| 久久久久久免费高清国产稀缺| 91麻豆av在线| 色综合站精品国产| 亚洲欧美日韩另类电影网站| 在线av久久热| 成年人免费黄色播放视频| 午夜激情av网站| 性少妇av在线| 99国产精品免费福利视频| 欧美不卡视频在线免费观看 | 亚洲国产看品久久| 精品高清国产在线一区| 十八禁人妻一区二区| 在线观看一区二区三区激情| 中文字幕av电影在线播放| 免费看十八禁软件| 欧美av亚洲av综合av国产av| 啦啦啦在线免费观看视频4| 麻豆av在线久日| 精品久久久久久,| 欧美最黄视频在线播放免费 | 99国产精品一区二区三区| 国产欧美日韩综合在线一区二区| 国产欧美日韩一区二区三| 亚洲自偷自拍图片 自拍| av福利片在线| 在线观看一区二区三区激情| www.熟女人妻精品国产| av有码第一页| 女性被躁到高潮视频| 日韩大码丰满熟妇| 亚洲全国av大片| 中出人妻视频一区二区| 欧美黄色片欧美黄色片| 一本综合久久免费| 国产精品偷伦视频观看了| 国产三级在线视频| 国产aⅴ精品一区二区三区波| 嫩草影院精品99| 欧美成人午夜精品| 操美女的视频在线观看| 亚洲视频免费观看视频| 亚洲中文日韩欧美视频| 亚洲国产欧美一区二区综合| 好男人电影高清在线观看| 日韩欧美在线二视频| 老汉色av国产亚洲站长工具|