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

    支持多程序語言的靜態(tài)信息提取方法

    2011-03-12 14:05:00王甜甜蘇小紅馬培軍
    關(guān)鍵詞:編譯器中端源代碼

    逄 龍,王甜甜,蘇小紅,馬培軍

    (哈爾濱工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,150001哈爾濱,hitpanglong@163.com)

    代碼靜態(tài)分析已經(jīng)廣泛應(yīng)用于程序理解、軟件缺陷檢測、程序驗(yàn)證等方面.靜態(tài)信息提取是代碼靜態(tài)分析的基礎(chǔ),是將代碼文本轉(zhuǎn)換為可分析處理的中間邏輯表示結(jié)構(gòu)的過程,其所支持解析的程序語言種類、生成的中間表示的表達(dá)能力都極大影響靜態(tài)代碼分析的應(yīng)用范圍.當(dāng)前主要采用的方法為:1)Yacc類語法生成解析器[1-2].該方法語言適應(yīng)能力強(qiáng),但后續(xù)語法的消歧和調(diào)試開銷大,中間表示結(jié)果單一;2)專用前端解析,如CIL,Clang等[3-4],文檔完整,但支持語言單一,需其他預(yù)處理工具支持,中間表示單一;3)對編譯器擴(kuò)展[5-6],應(yīng)用便捷,但對編譯器內(nèi)部已有功能重用率低,執(zhí)行效率不高;4)解析編譯器中間調(diào)試文件,重構(gòu)中間表示[7-10],支持多種語言,但實(shí)現(xiàn)復(fù)雜,后續(xù)測試開銷大.

    為了支持多語言解析,并提供統(tǒng)一且具備不同表達(dá)能力的中間表示,滿足健壯性和穩(wěn)定性的要求,通過在代碼級別改造開源GCC編譯器來實(shí)現(xiàn)靜態(tài)信息的提取.該編譯器應(yīng)用廣泛、成熟可靠,所以在此基礎(chǔ)上改造可以降低后續(xù)分析程序的復(fù)雜度,但這種方法的主要難點(diǎn)是代碼規(guī)模較大、整體復(fù)雜、文檔不完整、代碼的設(shè)計(jì)目標(biāo)與靜態(tài)分析的目標(biāo)不同,因而需要針對靜態(tài)分析的目標(biāo)在代碼級別對其進(jìn)行修改.本文首先對靜態(tài)信息所依賴的GCC源代碼內(nèi)部運(yùn)行過程和相關(guān)機(jī)制進(jìn)行分析,然后針對類型和函數(shù)聲明定義、函數(shù)體內(nèi)語句遍歷和中間表示訪問等靜態(tài)信息,在GCC編譯器的不同階段提出了運(yùn)行改入點(diǎn)和內(nèi)部輔助函數(shù)相結(jié)合的提取方法,并給出整體的修改、應(yīng)用流程,最后通過提取典型靜態(tài)信息的對比實(shí)驗(yàn),表明該方法提高了執(zhí)行效率,增強(qiáng)了靜態(tài)信息提取的可靠性.

    1 與靜態(tài)信息提取相關(guān)的GCC源代碼分析

    GCC-4.3.0編譯器整體結(jié)構(gòu)如圖1所示.整體劃分為3層:前端解析源代碼、中端負(fù)責(zé)機(jī)器無關(guān)的優(yōu)化和后端負(fù)責(zé)目標(biāo)機(jī)器相關(guān)的優(yōu)化和變換.源代碼在前端生成原始中間表示后,通過后續(xù)的層間流轉(zhuǎn)、層內(nèi)變換和處理,最終生成目標(biāo)代碼.本文主要針對與靜態(tài)信息提取相關(guān)的前端、中端和涉及的中間表示進(jìn)行分析.

    圖1 GCC編譯器結(jié)構(gòu)框圖

    1.1 整體流程

    編譯器GCC開始執(zhí)行后,針對編譯對象的不同程序語言,調(diào)用對應(yīng)語言前端解析,將該編程語言源代碼文本解釋為與語言相關(guān)的抽象語法樹形式的中間表示.經(jīng)前端genericize函數(shù)去除語言相關(guān)性的節(jié)點(diǎn),轉(zhuǎn)換為Generic形式或直接為Gimple形式,輸入中端進(jìn)行優(yōu)化處理.中端優(yōu)化包括與目標(biāo)機(jī)器無關(guān)的過程間和過程內(nèi)優(yōu)化.調(diào)用圖管理器負(fù)責(zé)維護(hù)中間表示的過程間調(diào)用結(jié)構(gòu)邏輯關(guān)系,用以管理過程間優(yōu)化處理的中間結(jié)果,遍管理器負(fù)責(zé)維護(hù)編譯器內(nèi)對中間表示進(jìn)行優(yōu)化處理的各步驟定義、依賴關(guān)系和調(diào)用順序,用以指導(dǎo)優(yōu)化處理次序.

    1.2 中間表示

    GCC內(nèi)部中間表示是各層間流轉(zhuǎn)和層內(nèi)處理對象的重要數(shù)據(jù)結(jié)構(gòu),根據(jù)不同處理階段轉(zhuǎn)換為特定形式,同時也是靜態(tài)信息提取的直接來源,所蘊(yùn)含靜態(tài)信息的質(zhì)量和結(jié)構(gòu)組織的復(fù)雜性決定著靜態(tài)信息提取方法的質(zhì)量和效率.GCC前端和中端主要采用抽象語法樹、Generic、Gimple和SSA這4種形式中間表示.

    抽象語法樹是經(jīng)過解析源代碼文本后得到與之直接對應(yīng)的邏輯結(jié)構(gòu),與語言相關(guān).Generic形式是對抽象語法樹的簡化,統(tǒng)一語句結(jié)構(gòu),去除語言的相關(guān)性,包含副作用(Side Effect).Gimple形式是在Generic形式的基礎(chǔ)上限制每條語句的操作數(shù)<3的一種約簡,簡化了復(fù)雜表達(dá)式結(jié)構(gòu),引入中間臨時變量.SSA形式是在Gimple基礎(chǔ)上增加數(shù)據(jù)流信息的一種中間表示,在每次賦值時,對左邊變量都增加序號加以辨別,而且后續(xù)讀取該變量的表達(dá)式直接指向該變量序號的定義處.SSA和Gimple均適合作為靜態(tài)信息提取的中間表示.

    1.3 遍(Pass)

    在GCC優(yōu)化中,對編譯單元(函數(shù)或文件)的一次遍歷處理,稱為遍(Pass).GCC“遍管理器”是對遍定義、組織和執(zhí)行而實(shí)施管理的一組機(jī)制.根據(jù)靜態(tài)信息種類,提取過程可抽象為遍,通過在合適的步驟后對合適的中間表示遍歷來實(shí)現(xiàn),這樣可以重用GCC內(nèi)部已經(jīng)提供的通用功能和信息,如冗余代碼去除、控制流圖、數(shù)據(jù)依賴等.GCC通過遍來關(guān)聯(lián)中端和后端內(nèi)具體的優(yōu)化處理步驟,遍的機(jī)制分為3個部分:遍的定義、遍的組織和遍的執(zhí)行.

    2 靜態(tài)信息提取

    在分析與靜態(tài)信息提取相關(guān)的GCC內(nèi)部代碼組織機(jī)制的基礎(chǔ)上,根據(jù)信息來源,給出確切的改入點(diǎn),結(jié)合內(nèi)部輔助函數(shù)從獲得的中間表示中提取所需信息.核心思想是在GCC運(yùn)行過程中,在合適的位置得到合適的中間表示,使用合適的方法提取靜態(tài)信息.

    2.1 改入點(diǎn)

    改入點(diǎn)是修改GCC源代碼的位置,因?yàn)椴煌娜朦c(diǎn)會獲得不同中間表示,如圖2所示.

    1)遍改入點(diǎn).通過GCC內(nèi)部遍機(jī)制,以遍歷函數(shù)體內(nèi)語句方式來提取靜態(tài)信息.因?yàn)楸楣芾砥魈幱诰幾g器中端和后端部分,獲得語言無關(guān)的中間表示,所以遍改入點(diǎn)可直接應(yīng)用于編譯器所支持語言.根據(jù)所需提取靜態(tài)信息種類和GCC已定義遍所提供的不同中間表示,在適當(dāng)類型的遍中適當(dāng)順序位置處加入自定義遍.在圖2中0處 init-optimization-passes,初始化遍組織關(guān)系:低級化遍(all-lowering-passes)、過程遍(all-ipa-passes)和所有遍(all-passes).

    圖2 GCC 中語言前端和統(tǒng)一中端調(diào)用圖

    為獲得Gimple形式中間表示,在低級化遍中的pass-build-cfg遍后增加自定義遍.為獲得數(shù)據(jù)流相關(guān)的中間表示,在過程間遍中的pass-earlywarn-uninitialized遍后增加改入點(diǎn).其中:passbuild-cfg遍已經(jīng)建立了過程內(nèi)控制流圖和基本塊,通過遍歷程序基本塊間關(guān)系和塊內(nèi)語句可獲得初步的Gimple格式的統(tǒng)一中間表示;pass-remove-useless-stmts遍去除無用冗余的語句;passearly-warn-uninitialized遍檢測使用未初始化變量情況;pass-build-ssa遍建立了SSA的中間表示,通過遍歷定義-使用鏈獲得數(shù)據(jù)流相關(guān)信息.

    調(diào)用改入點(diǎn)是GCC調(diào)用內(nèi)部遍的位置,可根據(jù)需要調(diào)整具體調(diào)用次序.在圖2中,獲取Gimple的自定義遍從屬于低級化遍,在5處調(diào)用.獲取SSA的自定義遍從屬于過程間遍的第2層子遍pass-early-local-passes,在6處和8處調(diào)用.所有遍在7處調(diào)用.

    2)解析相關(guān)改入點(diǎn).通過GCC前端解析提取語言相關(guān)靜態(tài)信息.

    復(fù)合類型改入點(diǎn)為獲得結(jié)構(gòu)體、聯(lián)合體和類的類型定義相關(guān)靜態(tài)信息.在聲明與函數(shù)定義翻譯單元加入改入點(diǎn).在C語言前端的c-parserstruct-or-union-specifier函數(shù)內(nèi)1 979行處增加改入點(diǎn),該處獲得的是解析出的類型定義,如圖2中2所示.在C++語言前端(cp/Class.c)的finish-struct-1函數(shù)返回前增加改入點(diǎn),以獲得類定義中的域相關(guān)靜態(tài)信息.

    標(biāo)識符改入點(diǎn)為獲得全局變量相關(guān)靜態(tài)信息.GCC的標(biāo)識(Identity,ID)為3類:位置標(biāo)簽、復(fù)合類型名和和其他ID.ID通過struct c-binding與具體中間表示關(guān)聯(lián),以作用域(struct c-scope類型)為集合通過鏈表方式存儲.在關(guān)聯(lián)函數(shù)bind內(nèi)加入改入點(diǎn),如圖2中3所示.

    原始中間表示改入點(diǎn)為獲得抽象語法樹等靜態(tài)信息.GCC通過lang-hooks類型定義各語言解析、后端處理等入口函數(shù).C語言中,在c-genericize函數(shù)中,加入改入點(diǎn),如圖2中4所示,獲得原始抽象語法樹中間表示.C++語言中,在cp/ decl.c的finish-function中調(diào)用cp-genericize函數(shù)前增加改入點(diǎn),獲得原始抽象語法樹中間表示.

    3)輔助改入點(diǎn).為后續(xù)分析處理傳遞提取的靜態(tài)信息,在翻譯單元編譯開始前和結(jié)束后進(jìn)行必要的初始化和終結(jié)工作,在調(diào)用語言類函數(shù)指針前和之后增加改入點(diǎn),如圖2中1和9處所示.此處可以負(fù)責(zé)處理文件描述符、過程間通訊和數(shù)據(jù)庫操作等與外界交換信息的建立與消解,還可以設(shè)置初始化環(huán)境等.

    2.2 輔助函數(shù)

    輔助函數(shù)是在特定改入點(diǎn)獲得對應(yīng)中間表示后,根據(jù)靜態(tài)信息種類和GCC代碼內(nèi)部組織機(jī)制,來提取所需靜態(tài)信息的具體方法.

    1)位集合操作.數(shù)據(jù)流分析經(jīng)常使用集合操作,GCC內(nèi)部實(shí)現(xiàn)了集合相關(guān)操作運(yùn)算的抽象數(shù)據(jù)類型sbitmap,定義包含在Sbitmap.h內(nèi);提供基于位內(nèi)部表示和相關(guān)操作,初始化與可變長度調(diào)整:sbitmap-alloc、sbitmap-resize;集合運(yùn)算操作: sbitmap-difference、sbitmap-not;向量位集操作: sbitmap-vector-alloc;位集合設(shè)置內(nèi)聯(lián)函數(shù):SETBIT、sbitmap-iter-init等.

    2)輔助信息遍歷.輔助信息包括控制流圖和數(shù)據(jù)流信息.低級化遍中建立控制流圖,在所有遍生成的SSA中間表示蘊(yùn)含數(shù)據(jù)流信息.struct basic-block-def和struct edge-def定義了基本塊和邊.以ENTRY-BLOCK-PTR宏獲得入口基本塊開始,以FOR-EACH-BB宏基本塊間流轉(zhuǎn),實(shí)現(xiàn)基本塊遍歷.在基本塊內(nèi),bsi-start獲得塊內(nèi)首語句,bsi-next獲得下一條語句和bsi-end-p判定塊內(nèi)語句結(jié)束與否來實(shí)現(xiàn)基本塊內(nèi)語句遍歷. walk-use-def-chains函數(shù)遍歷數(shù)據(jù)流信息.

    圖3 修改GCC源代碼提取靜態(tài)信息過程圖

    3)表達(dá)式遍歷.遍歷表達(dá)式中的操作數(shù)來提取變量訪問.walk-tree函數(shù)遍歷抽象語法樹表達(dá)式;walk-stmts函數(shù)遍歷Gimple形式表達(dá)式,提供了賦值表達(dá)式中區(qū)別左邊和右邊表達(dá)式的標(biāo)志.FOR-EACH-SSA-TREE-OPERAND配合類型標(biāo)志位組合遍歷SSA操作數(shù).

    4)中間表示節(jié)點(diǎn)訪問.抽象數(shù)據(jù)類型tree統(tǒng)一表達(dá)各種中間表示,提供了對應(yīng)訪問函數(shù). TREE-CODE宏獲得節(jié)點(diǎn)種類;TREE-OPERAND獲得節(jié)點(diǎn)下指定操作數(shù);針對COMPONENT-REF類型節(jié)點(diǎn),DECL-CONTEXT獲得其域變量所屬類型;TYPE-NAME獲得變量的類型節(jié)點(diǎn); DECL-NAME獲得類型節(jié)點(diǎn)名稱,如在C語言中typedef定義的類型名稱;IDENTIFIER-POINTER獲得具體ID字符串;TYPE-FIELDS獲得結(jié)構(gòu)體或聯(lián)合體內(nèi)域的列表.

    2.3 其他相關(guān)修改

    在特定修改點(diǎn)利用輔助函數(shù)獲取了所需的靜態(tài)信息后,需要通過修改配置文件實(shí)現(xiàn)與GCC的整合.修改GCC源代碼提取靜態(tài)信息的整體過程如圖3所示.

    1)控制選項(xiàng)配置修改.是外部調(diào)用GCC可設(shè)置的參數(shù),通過添加與控制靜態(tài)信息提取相關(guān)選項(xiàng)來控制是否運(yùn)行.為便于控制,利用增加common.opt文件中選項(xiàng)定義記錄的方式來控制是否運(yùn)行靜態(tài)信息提取.

    2)工程配置修改.將自定義的文件通過編譯、鏈接整合到GCC.首先增加生成該源代碼文件的目標(biāo)文件的依賴關(guān)系,然后將此目標(biāo)文件加入OBJS-common所依賴列表中實(shí)現(xiàn)整合.

    3 結(jié)果與分析

    為了驗(yàn)證本文所提出方法的有效性、效率和健壯性,在2.6 GHz主頻CPU、2 GB內(nèi)存和Ubuntu 9.10操作系統(tǒng)的測試環(huán)境下,分別按本文方法和CIL方法,提取結(jié)構(gòu)體域變量讀、寫和函數(shù)訪問等靜態(tài)信息,應(yīng)用于5個開源軟件進(jìn)行測試,測試結(jié)果如表1所示.其中通過UCC統(tǒng)計(jì)代碼規(guī)模,Linux系統(tǒng)指令time統(tǒng)計(jì)運(yùn)行時間.

    表1 實(shí)驗(yàn)結(jié)果對比表

    如表1所示,由于本文方法是在GCC源碼級上修改,所以繼承了GCC特點(diǎn),在支持語言、耗時和錯誤數(shù)方面優(yōu)于CIL方法.CIL方法由于對擴(kuò)展語法支持不完備而發(fā)生的錯誤有:openssh中對64位整數(shù)常量不能識別;gtk中可變參數(shù)無法定義別名屬性.由于GCC對Java擴(kuò)展庫實(shí)現(xiàn)不完整,導(dǎo)致本文方法提取tomcat時部分依賴于此的文件無法編譯,但可以利用Open Java對應(yīng)庫文件替換予以解決.本文方法在處理Java語言時,較C語言耗時較大,主要由于前端頻繁啟動虛擬機(jī)造成的,通過改進(jìn)前端工作方式降低耗時.CIL方法由于對編譯器參數(shù)處理不完善,導(dǎo)致分析gtk項(xiàng)目時,無法自動完成需手工干預(yù),易用性方面弱于本文方法.

    4 結(jié)論

    1)一次實(shí)現(xiàn)后可支持多語言前端,可直接應(yīng)用于C/C++/Java等主流編程語言.

    2)通過增加參數(shù)選項(xiàng),按項(xiàng)目配置文件自動執(zhí)行靜態(tài)信息提取.

    3)重用了GCC內(nèi)前端和中端組織機(jī)制,避免了重復(fù)實(shí)現(xiàn),保證了效率、健壯性和穩(wěn)定性.

    [1]TERENCE P.The Definitive ANTLR Reference:Building Domain-Specific Languages[M].Raleigh,Dallas: Pragmatic Bookshelf,2007.

    [2]SCOTT M,GEORGE N.Elkhound:A fast,practical glr parser generator[C]//Proceedings of the 13thInternational Conference on Compiler Construction.Barcelona: EATCS,EASST,EAPLS,ACM,2004:325-336.

    [3]GEORGE C N,SCOTT M,SHREE P R,et al.CIL:Intermediate language and tools for analysis and transformation of C programs[C]//Proceedings of the 11thInternational Conference on Compiler Construction.Grenoble: EATCS,EASST,EAPLS,ACM,2002:213-228.

    [4]CHRIS L,VIKRAM A.LLVM:A compilation framework for lifelong program analysis&transformation[C]// Proceedings of the international symposium on Code generation and optimization.PaloAlto:ACM,2004:75-92.

    [5]SEAN C,DANIEL J D,EREZ Z.Extending GCC with modular gimple optimizations[C]//Proceedings of GCC Developers’Summit.Ottawa:Linux Symposium,2007: 31-37.

    [6]TARAS G,DAVID M.Using GCC instead of grep and sed[C]//Proceedings of GCC Developers’Summit.Ottawa:Linux Symposium,2008:21-32.

    [7]李鑫,王甜甜,蘇小紅,等.消除GCC抽象語法樹文本中冗余信息的算法研究[J].計(jì)算機(jī)科學(xué),2008,35(10):170-172.

    [8]KRAFT A,MALLOY A,POWER F.A tool chain for reverse engineering C++applications[J].Science of Computer Programming,2007,69(13):3-13.

    [9]GSCHWIND T,PINZGER M,GALL H.TUAnalyzeranalyzing templates in C++code[C]//Proceedings of the 11thWorking Conference on Reverse Engineering. Delft:IEEE,2004:48-57.

    [10]ANTONIOL G,DIPENTA M,MASONE G,et al. Compiler hacking for source code analysis[J].Software Quality Journal,2004,12(4):383-06.

    猜你喜歡
    編譯器中端源代碼
    人工智能下復(fù)雜軟件源代碼缺陷精準(zhǔn)校正
    基于TXL的源代碼插樁技術(shù)研究
    秘書、文書、檔案基本任務(wù)與網(wǎng)絡(luò)化管理
    基于相異編譯器的安全計(jì)算機(jī)平臺交叉編譯環(huán)境設(shè)計(jì)
    軟件源代碼非公知性司法鑒定方法探析
    中端單反攪局者 佳能77D
    揭秘龍湖產(chǎn)品“源代碼”
    通用NC代碼編譯器的設(shè)計(jì)與實(shí)現(xiàn)
    民國時期機(jī)器絲織物中端式字牌的研究
    絲綢(2014年10期)2014-02-28 14:56:05
    白酒行業(yè)黃金十年后的機(jī)遇變革
    日韩高清综合在线| 一级a爱片免费观看的视频| 婷婷丁香在线五月| 最近中文字幕高清免费大全6 | 国产精品无大码| 国产一级毛片七仙女欲春2| 成年版毛片免费区| 尾随美女入室| 成人精品一区二区免费| 中文字幕久久专区| 又黄又爽又刺激的免费视频.| 免费黄网站久久成人精品| 亚洲欧美精品综合久久99| 最新在线观看一区二区三区| 可以在线观看的亚洲视频| 亚洲精品久久国产高清桃花| 岛国在线免费视频观看| 一本久久中文字幕| 可以在线观看的亚洲视频| 国产精品永久免费网站| 人人妻人人看人人澡| 亚洲成人中文字幕在线播放| 久久九九热精品免费| 性插视频无遮挡在线免费观看| 偷拍熟女少妇极品色| 国产精品爽爽va在线观看网站| 国内揄拍国产精品人妻在线| 成人三级黄色视频| 亚洲精品一区av在线观看| 午夜免费成人在线视频| 91久久精品电影网| 永久网站在线| 亚洲专区国产一区二区| 伦精品一区二区三区| 91狼人影院| 国产毛片a区久久久久| 少妇熟女aⅴ在线视频| 亚洲性久久影院| 欧美激情国产日韩精品一区| 久久久久久久久久成人| 亚洲va日本ⅴa欧美va伊人久久| 国产精品国产高清国产av| 亚洲精品一卡2卡三卡4卡5卡| 日本成人三级电影网站| 中文亚洲av片在线观看爽| 成人国产综合亚洲| 老熟妇乱子伦视频在线观看| 国语自产精品视频在线第100页| 国产免费男女视频| 看免费成人av毛片| 欧美精品啪啪一区二区三区| 熟妇人妻久久中文字幕3abv| 亚洲va日本ⅴa欧美va伊人久久| 国产精品1区2区在线观看.| 日本黄色视频三级网站网址| av天堂中文字幕网| 少妇高潮的动态图| 国产激情偷乱视频一区二区| 日日夜夜操网爽| 午夜免费男女啪啪视频观看 | 欧美性感艳星| 乱人视频在线观看| 色哟哟·www| 深爱激情五月婷婷| 嫩草影院精品99| 久久精品影院6| 色哟哟·www| 88av欧美| 亚洲内射少妇av| 听说在线观看完整版免费高清| 亚洲熟妇中文字幕五十中出| 欧美一区二区亚洲| av在线天堂中文字幕| 精品久久久久久久久av| 国产一区二区在线av高清观看| 国产男人的电影天堂91| 国产欧美日韩精品亚洲av| 国产精品三级大全| 亚洲国产欧洲综合997久久,| 有码 亚洲区| 免费高清视频大片| 久久中文看片网| 国产男人的电影天堂91| a级毛片a级免费在线| 91久久精品国产一区二区三区| 在线观看美女被高潮喷水网站| 免费观看人在逋| 久久久久久久精品吃奶| 性色avwww在线观看| 午夜爱爱视频在线播放| bbb黄色大片| 高清在线国产一区| 免费黄网站久久成人精品| 亚洲图色成人| 久久久久久久亚洲中文字幕| 欧美成人免费av一区二区三区| 高清在线国产一区| 男女那种视频在线观看| 精品久久久噜噜| 久久久精品大字幕| 国产精品亚洲美女久久久| 少妇高潮的动态图| 中文亚洲av片在线观看爽| av天堂在线播放| 精品国产三级普通话版| 国产高清视频在线观看网站| 亚洲最大成人av| 免费人成视频x8x8入口观看| 日本一二三区视频观看| 成人av在线播放网站| 一进一出抽搐动态| 一卡2卡三卡四卡精品乱码亚洲| 国产色爽女视频免费观看| 看黄色毛片网站| 国产精品98久久久久久宅男小说| 成年女人看的毛片在线观看| 韩国av在线不卡| 成人鲁丝片一二三区免费| 91精品国产九色| 久久精品国产亚洲av天美| 国产色婷婷99| 国产午夜精品论理片| 精品福利观看| 我的老师免费观看完整版| 国产精品无大码| 97超视频在线观看视频| or卡值多少钱| 亚洲五月天丁香| av女优亚洲男人天堂| 蜜桃亚洲精品一区二区三区| 久久人妻av系列| 免费观看精品视频网站| 小说图片视频综合网站| 亚洲第一区二区三区不卡| 国产精品久久久久久亚洲av鲁大| 我的老师免费观看完整版| 此物有八面人人有两片| avwww免费| 女生性感内裤真人,穿戴方法视频| 免费看美女性在线毛片视频| 最近最新免费中文字幕在线| 亚洲国产色片| 一本久久中文字幕| 在线免费观看不下载黄p国产 | 亚洲中文字幕日韩| 22中文网久久字幕| 亚洲自拍偷在线| 成人国产麻豆网| 久久久久久国产a免费观看| 日日干狠狠操夜夜爽| 嫁个100分男人电影在线观看| 熟女人妻精品中文字幕| 亚洲不卡免费看| 99久久精品一区二区三区| 色综合色国产| 国产女主播在线喷水免费视频网站 | 搡老熟女国产l中国老女人| 黄色日韩在线| 色在线成人网| 国产一区二区激情短视频| 天天躁日日操中文字幕| 真人一进一出gif抽搐免费| 久久久久性生活片| 国产精品久久电影中文字幕| 亚洲三级黄色毛片| 看免费成人av毛片| 亚洲精品在线观看二区| 哪里可以看免费的av片| а√天堂www在线а√下载| 国产亚洲精品久久久久久毛片| 一区二区三区高清视频在线| 黄片wwwwww| 亚洲狠狠婷婷综合久久图片| 日韩精品有码人妻一区| 色吧在线观看| 毛片一级片免费看久久久久 | 亚洲人成网站在线播| 亚洲国产色片| 日本三级黄在线观看| 国产在线男女| 1000部很黄的大片| 亚洲精品色激情综合| 中亚洲国语对白在线视频| 免费看av在线观看网站| 国产精品不卡视频一区二区| 国产高潮美女av| 久久久久久久久久黄片| 最近最新免费中文字幕在线| 人妻久久中文字幕网| 欧美人与善性xxx| 日日啪夜夜撸| 欧美一区二区国产精品久久精品| 春色校园在线视频观看| 欧美极品一区二区三区四区| 欧美精品啪啪一区二区三区| 亚洲成人中文字幕在线播放| 99国产精品一区二区蜜桃av| 亚洲一区高清亚洲精品| 亚洲国产日韩欧美精品在线观看| 精品一区二区三区视频在线观看免费| 男女做爰动态图高潮gif福利片| 天堂√8在线中文| 内射极品少妇av片p| 熟女电影av网| 少妇人妻一区二区三区视频| 搡女人真爽免费视频火全软件 | 成人特级黄色片久久久久久久| 无遮挡黄片免费观看| 琪琪午夜伦伦电影理论片6080| 禁无遮挡网站| 日韩欧美在线二视频| 赤兔流量卡办理| 国产高潮美女av| 精品午夜福利在线看| 亚洲va在线va天堂va国产| 午夜福利成人在线免费观看| 搡老熟女国产l中国老女人| 国产一区二区三区视频了| 在线观看一区二区三区| 偷拍熟女少妇极品色| 无人区码免费观看不卡| 成人综合一区亚洲| 中文字幕熟女人妻在线| 97热精品久久久久久| 蜜桃亚洲精品一区二区三区| 中文资源天堂在线| 91午夜精品亚洲一区二区三区 | 免费看av在线观看网站| 国产精品野战在线观看| 九九在线视频观看精品| 男人舔女人下体高潮全视频| 免费大片18禁| 99在线视频只有这里精品首页| 高清在线国产一区| 日本熟妇午夜| 欧美+亚洲+日韩+国产| 亚洲一级一片aⅴ在线观看| 免费大片18禁| 乱系列少妇在线播放| 精品久久久噜噜| 在线播放无遮挡| 国产一级毛片七仙女欲春2| 国产一区二区三区av在线 | 国产精品久久久久久久久免| 国产探花在线观看一区二区| 一区二区三区激情视频| 亚洲av.av天堂| 欧美成人性av电影在线观看| x7x7x7水蜜桃| 真人做人爱边吃奶动态| 亚洲第一区二区三区不卡| 久久精品久久久久久噜噜老黄 | 亚洲av第一区精品v没综合| av女优亚洲男人天堂| 级片在线观看| 亚洲av五月六月丁香网| av中文乱码字幕在线| 少妇人妻一区二区三区视频| 成年免费大片在线观看| 国产精品一区二区三区四区免费观看 | 国产精品综合久久久久久久免费| 欧美日韩综合久久久久久 | 99久久精品热视频| av视频在线观看入口| 免费黄网站久久成人精品| 国语自产精品视频在线第100页| 婷婷色综合大香蕉| 久久久久久久午夜电影| 久久久色成人| 天堂网av新在线| 变态另类成人亚洲欧美熟女| 最新中文字幕久久久久| 欧美成人a在线观看| 欧美国产日韩亚洲一区| 看免费成人av毛片| 成人三级黄色视频| 最近中文字幕高清免费大全6 | 亚洲美女搞黄在线观看 | 欧美区成人在线视频| 色综合亚洲欧美另类图片| 亚洲欧美日韩卡通动漫| 午夜激情福利司机影院| 成人美女网站在线观看视频| 老熟妇仑乱视频hdxx| 精品午夜福利在线看| 精品欧美国产一区二区三| 久久久精品大字幕| 欧美三级亚洲精品| 国产精品人妻久久久影院| 午夜精品在线福利| 成人综合一区亚洲| 亚洲成人久久性| 综合色av麻豆| 精品无人区乱码1区二区| 国产激情偷乱视频一区二区| 久久热精品热| or卡值多少钱| 亚洲av不卡在线观看| 成人国产综合亚洲| 国内揄拍国产精品人妻在线| 男女视频在线观看网站免费| 亚洲成a人片在线一区二区| 亚洲精华国产精华液的使用体验 | 欧美极品一区二区三区四区| 国产精品98久久久久久宅男小说| 一级a爱片免费观看的视频| 色播亚洲综合网| 亚洲图色成人| 精品一区二区三区人妻视频| 一级a爱片免费观看的视频| videossex国产| 国内精品久久久久精免费| 日韩欧美 国产精品| 久久久久久大精品| 国产精品一区www在线观看 | 天堂动漫精品| 韩国av在线不卡| 两性午夜刺激爽爽歪歪视频在线观看| 久久精品国产亚洲av香蕉五月| 欧美成人一区二区免费高清观看| 精品久久久久久久久久久久久| 12—13女人毛片做爰片一| 国产一区二区亚洲精品在线观看| 午夜激情福利司机影院| 韩国av一区二区三区四区| 日本色播在线视频| 免费人成视频x8x8入口观看| 女的被弄到高潮叫床怎么办 | 两个人视频免费观看高清| 亚洲久久久久久中文字幕| 亚洲中文字幕日韩| av在线蜜桃| 在线观看一区二区三区| 国产精华一区二区三区| 联通29元200g的流量卡| 国产精品福利在线免费观看| 一个人观看的视频www高清免费观看| 午夜福利成人在线免费观看| 一区二区三区激情视频| 国产黄a三级三级三级人| 国产日本99.免费观看| 又黄又爽又免费观看的视频| 黄色女人牲交| 最近在线观看免费完整版| 色综合婷婷激情| 国内揄拍国产精品人妻在线| 男人和女人高潮做爰伦理| 国产在视频线在精品| 国产精品久久久久久亚洲av鲁大| 女人十人毛片免费观看3o分钟| 国产 一区 欧美 日韩| 22中文网久久字幕| 一个人免费在线观看电影| 老女人水多毛片| 精品人妻1区二区| 俺也久久电影网| 久久久久久久亚洲中文字幕| 日韩精品青青久久久久久| 欧美成人性av电影在线观看| 淫妇啪啪啪对白视频| 2021天堂中文幕一二区在线观| 狠狠狠狠99中文字幕| 淫妇啪啪啪对白视频| 国内少妇人妻偷人精品xxx网站| 欧美日韩乱码在线| 天堂影院成人在线观看| 91午夜精品亚洲一区二区三区 | 国产亚洲精品综合一区在线观看| 欧美日本亚洲视频在线播放| 天天躁日日操中文字幕| 免费一级毛片在线播放高清视频| 国产精品无大码| 国产精华一区二区三区| 在线观看舔阴道视频| 草草在线视频免费看| 精品人妻熟女av久视频| 国产伦一二天堂av在线观看| 亚洲乱码一区二区免费版| 免费搜索国产男女视频| 日韩大尺度精品在线看网址| 日日啪夜夜撸| 国模一区二区三区四区视频| 国产精品人妻久久久久久| 精品一区二区免费观看| av女优亚洲男人天堂| 亚洲,欧美,日韩| 久久久成人免费电影| 熟女人妻精品中文字幕| 国产精品一区二区三区四区免费观看 | 亚洲av中文字字幕乱码综合| 久久这里只有精品中国| 国产成人aa在线观看| 免费av不卡在线播放| 国国产精品蜜臀av免费| 午夜福利成人在线免费观看| 日韩欧美 国产精品| 99久久无色码亚洲精品果冻| 日日摸夜夜添夜夜添小说| 午夜福利欧美成人| 99精品久久久久人妻精品| 18+在线观看网站| 国产蜜桃级精品一区二区三区| 国产中年淑女户外野战色| 久久久久国产精品人妻aⅴ院| 日本精品一区二区三区蜜桃| 亚洲欧美精品综合久久99| 久久香蕉精品热| 国产精品自产拍在线观看55亚洲| 内地一区二区视频在线| 12—13女人毛片做爰片一| 免费搜索国产男女视频| 99久久精品一区二区三区| 午夜a级毛片| 午夜激情福利司机影院| 国产熟女欧美一区二区| 国内毛片毛片毛片毛片毛片| 成人综合一区亚洲| 婷婷六月久久综合丁香| 亚洲人成伊人成综合网2020| 国产精品久久久久久久电影| 国产黄色小视频在线观看| 免费人成在线观看视频色| 久久精品夜夜夜夜夜久久蜜豆| 在线免费观看不下载黄p国产 | 亚洲av熟女| 成人欧美大片| 美女免费视频网站| 久99久视频精品免费| 国产高清不卡午夜福利| 一级毛片久久久久久久久女| 黄色欧美视频在线观看| 成人三级黄色视频| 国产美女午夜福利| 久久久久免费精品人妻一区二区| 免费看a级黄色片| 别揉我奶头~嗯~啊~动态视频| av专区在线播放| 波多野结衣高清无吗| 久久久久九九精品影院| 看十八女毛片水多多多| a级毛片a级免费在线| 国产高清三级在线| 男女下面进入的视频免费午夜| 亚洲人成伊人成综合网2020| 欧美日韩综合久久久久久 | 国产中年淑女户外野战色| 日韩中文字幕欧美一区二区| 美女xxoo啪啪120秒动态图| 又黄又爽又免费观看的视频| 两个人的视频大全免费| 日日干狠狠操夜夜爽| 精品国内亚洲2022精品成人| 欧美日韩精品成人综合77777| 三级毛片av免费| 亚洲中文字幕日韩| 夜夜爽天天搞| 日韩欧美在线乱码| 亚洲av成人av| 国产大屁股一区二区在线视频| 深夜a级毛片| 狂野欧美白嫩少妇大欣赏| 亚洲人成网站在线播放欧美日韩| 狂野欧美激情性xxxx在线观看| 久久久久精品国产欧美久久久| 成人三级黄色视频| 日本黄色片子视频| ponron亚洲| 好男人在线观看高清免费视频| 欧美最新免费一区二区三区| 一个人免费在线观看电影| 欧美性猛交╳xxx乱大交人| 一本精品99久久精品77| 久久精品夜夜夜夜夜久久蜜豆| 男人狂女人下面高潮的视频| 久久久午夜欧美精品| 午夜精品久久久久久毛片777| 小说图片视频综合网站| 成人午夜高清在线视频| 在线观看舔阴道视频| 亚洲熟妇熟女久久| 日本三级黄在线观看| 黄片wwwwww| 美女高潮的动态| 神马国产精品三级电影在线观看| 日本欧美国产在线视频| 麻豆成人av在线观看| 99久久无色码亚洲精品果冻| 黄色配什么色好看| 日韩欧美免费精品| 在线观看舔阴道视频| 丰满乱子伦码专区| 窝窝影院91人妻| 国产精品一区二区三区四区久久| 色尼玛亚洲综合影院| 国产精品av视频在线免费观看| 女的被弄到高潮叫床怎么办 | 很黄的视频免费| 成人毛片a级毛片在线播放| 午夜免费激情av| 熟妇人妻久久中文字幕3abv| 国产高清视频在线观看网站| 黄色丝袜av网址大全| 日韩精品有码人妻一区| aaaaa片日本免费| 午夜免费成人在线视频| 国产成人av教育| 国产爱豆传媒在线观看| 日本欧美国产在线视频| 成人特级黄色片久久久久久久| 天天躁日日操中文字幕| 老熟妇乱子伦视频在线观看| 精品免费久久久久久久清纯| 91在线观看av| 国产一区二区亚洲精品在线观看| 国产探花在线观看一区二区| 精品午夜福利在线看| 精品久久久噜噜| 免费高清视频大片| 日韩大尺度精品在线看网址| 亚洲一级一片aⅴ在线观看| 国产精品永久免费网站| 黄色女人牲交| 欧美中文日本在线观看视频| 婷婷精品国产亚洲av在线| 精品欧美国产一区二区三| 国产黄片美女视频| 国产精品自产拍在线观看55亚洲| 91在线精品国自产拍蜜月| 直男gayav资源| 一区福利在线观看| 欧美另类亚洲清纯唯美| 波野结衣二区三区在线| 日日干狠狠操夜夜爽| 亚洲美女搞黄在线观看 | 国产大屁股一区二区在线视频| 日韩欧美国产在线观看| 久久欧美精品欧美久久欧美| 国产精品精品国产色婷婷| 99久久精品一区二区三区| 婷婷色综合大香蕉| 国产欧美日韩一区二区精品| 亚洲一区二区三区色噜噜| 最近中文字幕高清免费大全6 | 亚洲性久久影院| 欧美三级亚洲精品| 午夜福利在线观看吧| av专区在线播放| 国产一区二区激情短视频| 精品久久久久久成人av| 黄片wwwwww| 好男人在线观看高清免费视频| av专区在线播放| 亚洲内射少妇av| 桃红色精品国产亚洲av| 亚洲国产高清在线一区二区三| 精品久久久久久久久av| 成人美女网站在线观看视频| 久久人人精品亚洲av| aaaaa片日本免费| 欧美三级亚洲精品| 免费观看的影片在线观看| 波多野结衣巨乳人妻| 露出奶头的视频| 极品教师在线视频| 少妇人妻一区二区三区视频| 亚洲五月天丁香| 黄色日韩在线| 舔av片在线| 精品一区二区三区av网在线观看| 不卡一级毛片| 在线观看美女被高潮喷水网站| 淫妇啪啪啪对白视频| 日韩欧美三级三区| 亚洲欧美精品综合久久99| 男女下面进入的视频免费午夜| 亚洲欧美激情综合另类| 一本精品99久久精品77| 99久久久亚洲精品蜜臀av| 国产不卡一卡二| 免费观看的影片在线观看| 中文字幕av在线有码专区| 超碰av人人做人人爽久久| 老女人水多毛片| 人人妻人人澡欧美一区二区| 国产中年淑女户外野战色| 在线天堂最新版资源| 1024手机看黄色片| 国产精品国产高清国产av| 99国产精品一区二区蜜桃av| 久久久久久久久中文| 日韩强制内射视频| 国产探花在线观看一区二区| 成年女人永久免费观看视频| 中文字幕人妻熟人妻熟丝袜美| av天堂在线播放| 亚洲一区高清亚洲精品| 国产免费一级a男人的天堂| 亚洲四区av| 欧美最新免费一区二区三区| 国产精品久久久久久精品电影| 级片在线观看| 国产 一区精品| 亚洲四区av| 亚洲色图av天堂| 九九久久精品国产亚洲av麻豆| 老女人水多毛片| 村上凉子中文字幕在线| 成人亚洲精品av一区二区| 亚洲精品亚洲一区二区| 久久6这里有精品| 亚洲经典国产精华液单| 国产精品爽爽va在线观看网站| 久久精品国产亚洲av涩爱 | 国产精品一及| 老司机午夜福利在线观看视频|