日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

失落的C语言结构体封装艺术

發布時間:2024/1/18 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 失落的C语言结构体封装艺术 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄


1. 誰該閱讀這篇文章


2. 我為什么寫這篇文章


3.對齊要求


4.填充


5.結構體對齊及填充


6.結構體重排序


7.難以處理的標量的情況


8.可讀性和緩存局部性


9.其他封裝的技術


10.工具


11.證明及例外


12.版本履歷


1. 誰該閱讀這篇文章


本文是關于削減C語言程序內存占用空間的一項技術——為了減小內存大小而手工重新封裝C結構體聲明。你需要C語言的基本知識來讀懂本文。


如果你要為內存有限制的嵌入式系統、或者操作系統內核寫代碼,那么你需要懂這項技術。如果你在處理極大的應用程序數據集,以至于你的程序常常達到內存的界限時,這項技術是有幫助的。在任何你真的真的需要關注將高速緩存行未命中降到最低的應用程序里,懂得這項技術是很好的。


最后,理解該技術是一個通往其他深奧的C語言話題的入口。直到你掌握了它,你才成為一個高端的C程序員。直到你可以自己寫出這篇文檔并且可以理智地評論它,你才成為一位C語言大師。


2. 我為什么寫這篇文章


本文之所以存在,是因為在2013年底,我發現我自己在大量使用一項C語言的優化技術,我早在二十多年前就已經學會了該技術,不過在那之后并沒怎么使用過。


我需要減小一個程序的內存占用空間,它用了幾千——有時是幾十萬個——C結構體的實例。這個程序是cvs-fast-export,而問題在于處理巨大的代碼庫時,它曾因內存耗盡的錯誤而瀕臨崩潰。


在這類情況下,有好些辦法能極大地減少內存使用的,比如小心地重新安排結構體成員的順序之類的。這可以獲得巨大的收益——在我的事例中,我能夠減掉大約40%的工作區大小,使得程序能夠在不崩潰的情況下處理大得多的代碼庫。


當我解決這個問題,并且回想我所做的工作時,我開始發現,我在用的這個技術現今應被忘了大半了。一個網絡調查確認,C程序員好像已經不再談論該技術了,至少在搜索引擎可以看到的地方不談論了。有幾個維基百科條目觸及了這個話題,但是我發現沒人能全面涵蓋。


實際上這個現象也是有合理的理由的。計算機科學課程(應當)引導人們避開細節的優化而去尋找更好的算法。機器資源價格的暴跌已經使得壓榨內存用量變得不那么必要了。而且,想當年,駭客們曾經學習如何使用該技術,使得他們在陌生的硬件架構上撞墻了——現在已經不太常見的經歷。


但是這項技術仍然在重要的場合有價值, 并且只要內存有限,就能永存。本文目的就是讓C程序員免于重新找尋這項技術,而讓他們可以集中精力在更重要的事情上。


3. 對齊要求(Alignment Requirement)


要明白的第一件事是,在現代處理器上,你的C編譯器在內存里對基本的C數據類型的存放方式是受約束的,為的是內存訪問更快。


在x86或者ARM處理器上,基本的C數據類型的儲存一般并不是起始于內存中的任意字節地址。而是,每種類型,除了字符型以外,都有對齊要求;字符可以起始于任何字節地址,但是2字節的短整型必須起始于一個偶數地址,4字節整型或者浮點型必須起始于被4整除的地址,以及8字節長整型或者雙精度浮點型必須起始于被8整除的地址。帶符號與不帶符號之間沒有差別。


這個的行話叫:在x86和ARM上,基本的C語言類型是自對齊(self-aligned)的。指針,無論是32位(4字節)亦或是64位(8字節)也都是自對齊的。


自對齊使得訪問更快,因為它使得一條指令就完成對類型化數據的取和存操作。沒有對齊的約束,反過來,代碼最終可能會不得不跨越機器字的邊界做兩次或更多次訪問。字符是特殊的情況;無論在一個單機器字中的何處,存取的花費都是一樣的。那就是為什么字符型沒有被建議對齊。


我說“在現代的處理器上”是因為,在一些舊的處理器上,強制讓你的C程序違反對齊約束(比方說,將一個奇數的地址轉換成一個整型指針,并試圖使用它)不僅會使你的代碼慢下來,還會造成非法指令的錯誤。比如在Sun的SPARC芯片上就曾經這么干。實際上,只要夠決心并在處理器上設定正確(e18)的硬件標志位,你仍然可以在x86上觸發此錯誤。


此外,自對齊不是唯一的可能的規則。歷史上,一些處理器(特別是那些缺少移位暫存器的)有更強的限制性規則。如果你做嵌入式系統,你也許會在跌倒在這些叢林陷阱中。注意,這是有可能的。


有時你可以通過編譯指示,強制讓你的編譯器不使用處理器正常的對齊規則,通常是#pragma pack。不要隨意使用,因為它會導致產生開銷更大、更慢的代碼。使用我在這里描述的技術,通常你可以節省同樣或者幾乎同樣多的內存。


#pragma pack的唯一好處是,如果你不得不將你的C語言數據分布精確匹配到某些位級別的硬件或協議的需求,比如一個內存映射的硬件端口,要求違反正常的對齊才能奏效。如果你遇到那種情況,并且你還未理解我在這里寫的這一切,你會有大麻煩的,我只能祝你好運了。


4. 填充(Padding)


現在我們來看一個簡單變量在內存里的分布的例子。考慮在C模塊的最頂上的以下一系列的變量聲明:


char *p; char c; int x;

如果你不知道任何關于數據對齊的事情,你可能會假設這3個變量在內存里會占據一個連續字節空間。那也就是說,在一個32位機器上,指針的4字節,之后緊接著1字節的字符型,且之后緊接著4字節的整型。在64位機器只在指針是8字節上會有所不同。


這里是實際發生的(在x86或ARM或其他任何有自對齊的處理器類型)。p的存儲地址始于一個自對齊的4字節或者8字節邊界,取決于機器的字長。這是指針對齊——可能是最嚴格的情況。


緊跟著的是c的存儲地址。但是x的4字節對齊要求,在內存分布上造成了一個間隙;變成了恰似第四個變量插在其中,像這樣:

char *p; /* 4 or 8 bytes */ char c; /* 1 byte */ char pad[3]; /* 3 bytes */ int x; /* 4 bytes */


pad[3]字符數組表示了一個事實,結構體中有3字節的無用的空間。 老派的術語稱之為“slop(水坑)”。


比較如果x是2字節的短整型會發生什么:

char *p; char c; short x;

在那個情況下,實際的內存分布會變成這樣:

char *p; /* 4 or 8 bytes */ char c; /* 1 byte */ char pad[1]; /* 1 byte */ short x; /* 2 bytes */


另一方面,如果x是一個在64位機上的長整型

char *p; char c; long x;


最終我們會得到:

char *p; /* 8 bytes */ char c; /* 1 byte char pad[7]; /* 7 bytes */ long x; /* 8 bytes */


如果你已仔細看到這里,現在你可能會想到越短的變量聲明先聲明的情況:

char c; char *p; int x;


如果實際的內存分布寫成這樣:

char c; char pad1[M]; char *p; char pad2[N]; int x;


我們可以說出M和N的值嗎?


首先,在這個例子中,N是零。x的地址,緊接在p之后,是保證指針對齊的,肯定比整型對齊更嚴格的。


M的值不太能預測。如果編譯器恰巧把c映射到機器字的最后一個字節,下一個字節(p的第一部分)會成為下一個機器字的第一個字節,并且正常地指針對齊。M為零。


c更可能會被映射到機器字的第一個字節。在那個情況下,M會是以保證p指針對齊而填補的數——在32位機器上是3,64位機器上是7。


如果你想讓那些變量占用更少的空間,你可以通過交換原序列中的x和c來達到效果。

char *p; /* 8 bytes */ long x; /* 8 bytes */ char c; /* 1 byte


通常,對于C程序里少數的簡單變量,你可以通過調整聲明順序來壓縮掉極少幾個字節數,不會有顯著的節約。但當用于非標量變量(nonscalar variables),尤其是結構體時,這項技術會變得更有趣。


在我們講到非標量變量之前,讓我們講一下標量數組。在一個有自對齊類型的平臺上,字符、短整型、整型、長整型、指針數組沒有內部填充。每個成員會自動自對齊到上一個之后(譯者注:原文 self-aligned at the end of the next one 似有誤)。


在下一章,我們會看到對于結構體數組,一樣的規則并不一定正確。


5. 結構體的對齊和填充


總的來說,一個結構體實例會按照它最寬的標量成員對齊。編譯器這樣做,把它作為最簡單的方式來保證所有成員是自對齊,為了快速訪問的目的。


而且,在C語言里,結構體的地址與它第一個成員的地址是相同的——沒有前置填充。注意:在C++里,看上去像結構體的類可能不遵守這個規則!(遵不遵守依賴于基類和虛擬內存函數如何實現,而且因編譯器而不同。)


(當你不能確定此類事情時,ANSI C提供了一個offsetof()宏,能夠用來表示出結構體成員的偏移量。)


考慮這個結構體:

struct foo1 {char *p;char c;long x; };


假設一臺64位的機器,任何struct foo1的實例會按8字節對齊。其中的任何一個的內存分布看上去無疑應該像這樣:


struct foo1 {char *p; /* 8 bytes */char c; /* 1 bytechar pad[7]; /* 7 bytes */long x; /* 8 bytes */ };

它的分布就恰好就像這些類型的變量是單獨聲明的。但是如果我們把c放在第一個,這就不是了。

struct foo2 {char c; /* 1 byte */char pad[7]; /* 7 bytes */char *p; /* 8 bytes */long x; /* 8 bytes */ };


如果成員是單獨的變量,c可以起始于任何字節邊界,并且pad的大小會不同。但因為struct foo2有按其最寬成員進行的指針對齊,那就不可能了。現在c必須于指針對齊,之后7個字節的填充就被鎖定了。


現在讓我們來說說關于在結構體成員的尾隨填充(trailing padding)。要解釋這個,我需要介紹一個基本概念,我稱之為結構體的跨步地址(stride address)。它是跟隨結構體數據后的第一個地址,與結構體擁有同樣對齊方式。


結構體尾隨填充的通常規則是這樣的:編譯器的行為就如把結構體尾隨填充到它的跨步地址。這條規則決定了sizeof()的返回值。


考慮在64位的x86或ARM上的這個例子:

struct foo3 {char *p; /* 8 bytes */char c; /* 1 byte */ };struct foo3 singleton; struct foo3 quad[4];


你可能會認為,sizeof(struct foo3)應該是9,但實際上是16。跨步地址是(&p)[2]的地址。如此,在quad數組中,每個成員有尾隨填充的7字節,因為每個跟隨的結構體的第一個成員都要自對齊到8字節的邊界上。內存分布就如結構體像這樣聲明:

struct foo3 {char *p; /* 8 bytes */char c; /* 1 byte */char pad[7]; };


作為對照,考慮下面的例子:

struct foo4 {short s; /* 2 bytes */char c; /* 1 byte */ };


因為s只需對齊到2字節, 跨步地址就只有c后面的一個字節,struct foo4作為一個整體,只需要一個字節的尾隨填充。它會像這樣分布

struct foo4 {short s; /* 2 bytes */char c; /* 1 byte */char pad[1]; };


并且sizeof(struct foo4)會返回4。

現在讓我們考慮位域(bitfield)。它們是你能夠聲明比字符寬度還小的結構體域,小到1位,像這樣:

struct foo5 {short s;char c;int flip:1;int nybble:4;int septet:7; };


關于位域需要知道的事情是,它們以字或字節級別的掩碼和移位指令來實現。從編譯器的觀點來看,struct foo5的位域看上去像2字節,16位的字符數組里只有12位被使用。接著是填充,使得這個結構體的字節長度成為sizeof(short)的倍數即最長成員的大小。


struct foo5 {short s; /* 2 bytes */char c; /* 1 byte */int flip:1; /* total 1 bit */int nybble:4; /* total 5 bits */int septet:7; /* total 12 bits */int pad1:4; /* total 16 bits = 2 bytes */char pad2; /* 1 byte */ };

這里是最后一個重要的細節:如果你的結構體含有結構體的成員,里面的結構體也需要按最長的標量對齊。假設如果你寫成這樣:

struct foo6 {char c;struct foo5 {char *p;short x;} inner; };


內部結構體的char *p成員使得外部的結構體與內部的一樣成為指針對齊。在64位機器上,實際的分布是像這樣的:

struct foo6 {char c; /* 1 byte*/char pad1[7]; /* 7 bytes */struct foo6_inner {char *p; /* 8 bytes */short x; /* 2 bytes */char pad2[6]; /* 6 bytes */} inner; };


這個結構體給了我們一個啟示,重新封裝結構體可能節省空間。24個字節中,有13個字節是用作填充的。超過50%的無用空間!


6. 結構體重排序(reordering)


現在你知道如何以及為何編譯器要插入填充,在你的結構體之中或者之后,我們要考察你可以做些什么來擠掉這些“水坑”。這就是結構體封裝的藝術。


第一件需要注意的事情是,“水坑”僅發生于兩個地方。一個是大數據類型(有更嚴格的對齊要求)的存儲區域緊跟在一個較小的數據類型的存儲區域之后。另一個是結構體自然結束于它的跨步地址之前,需要填充,以使下一個實例可以正確對齊。


消除“水坑”的最簡單的方法是按對齊的降序來對結構體成員重排序。就是說:所有指針對齊的子域在前面,因為在64位的機器上,它們會有8字節。接下來是4字節的整型;然后是2字節的短整型;然后是字符域。


因此,舉個例子,考慮這個簡單的鏈表結構體:

struct foo7 {char c;struct foo7 *p;short x; };


顯現出隱含的“水坑”,這樣:

struct foo7 {char c; /* 1 byte */char pad1[7]; /* 7 bytes */struct foo7 *p; /* 8 bytes */short x; /* 2 bytes */char pad2[6]; /* 6 bytes */ };


24個字節。如果我們按大小重新排序,我們得到:

struct foo8 {struct foo8 *p;short x;char c; };


考慮到自對齊,我們看到沒有數據域需要填充。這是因為一個較長的、有較嚴格對齊的域的跨步地址,對于較短的、較不嚴格對齊的域來說,總是合法對齊的起始地址。所有重封裝的結構體實際上需要的只是尾隨填充:

struct foo8 {struct foo8 *p; /* 8 bytes */short x; /* 2 bytes */char c; /* 1 byte */char pad[5]; /* 5 bytes */ };


我們重封裝的轉變把大小降到了16字節。這可能看上去沒什么,但是假設你有一個200k的這樣的鏈表呢?節省的空間累積起來就不小了。

注意重排序并不能保證節省空間。把這個技巧運用到早先的例子,struct foo6,我們得到:

struct foo9 {struct foo9_inner {char *p; /* 8 bytes */int x; /* 4 bytes */} inner;char c; /* 1 byte*/ };


把填充寫出來,就是這樣

struct foo9 {struct foo9_inner {char *p; /* 8 bytes */int x; /* 4 bytes */char pad[4]; /* 4 bytes */} inner;char c; /* 1 byte*/char pad[7]; /* 7 bytes */ };


它仍然是24字節,因為c不能轉換到內部結構體成員的尾隨填充。為了獲得節省空間的好處,你需要重新設計你的數據結構。


自從發布了這篇指南的第一版,我就被問到了,如果通過重排序來得到最少的“水坑”是如此簡單,為什么C編譯器不自動完成呢?答案是:C語言最初是被設計用來寫操作系統和其他接近硬件的語言。自動重排序會妨礙到系統程序員規劃結構體,精確匹配字節和內存映射設備控制塊的位級分布的能力。


7. 難以處理的標量的情況


使用枚舉類型而不是#defines是個好主意,因為符號調試器可以用那些符號并且可以顯示它們,而不是未處理的整數。但是,盡管枚舉要保證兼容整型類型,C標準沒有明確規定哪些潛在的整型類型會被使用。


注意,當重新封裝你的結構體時,雖然枚舉類型變量通常是整型,但它依賴于編譯器;它們可能是短整型、長整型、甚至是默認的字符型。你的編譯器可能有一個編譯指示或者命令行選項來強制規定大小。


long double類型也是個相似的麻煩點。有的C平臺以80位實現,有的是128, 還有的80位的平臺填充到96或128位。


在這兩種情況下,最好用sizeof()來檢查存儲大小。


最后,在x86下,Linux的雙精度類型有時是一個自對齊規則的特例;一個8字節的雙精度數據在一個結構體內可以只要求4字節對齊,雖然單獨的雙精度變量要求8字節的自對齊。這依賴于編譯器及其選項。


8. 可讀性和緩存局部性


盡管按大小重排序是消除“水坑”的最簡單的方式,但它不是必定正確的。還有兩個問題:可讀性和緩存局部性。


程序不只是與計算機的交流,還是與其他人的交流。代碼可讀性是重要的,即便(或者尤其是!)交流的另一方不只是未來的你。


笨拙的、機械的結構體重排序會損害可讀性。可能的話,最好重排域,使得語義相關的數據段緊緊相連,能形成連貫的組群。理想情況下,你的結構體設計應該傳達到你的程序。


當你的程序經常訪問一個結構體,或者結構體的一部分,如果訪問常命中緩存行(當被告知去讀取任何一個塊里單個地址時,你的處理器讀取的整一塊內存)有助于提高性能。在64位x86機上一條緩存行為64字節,始于一個自對齊的地址;在其他平臺上經常是32字節。


你應該做的事情是保持可讀性——把相關的和同時訪問的數據組合到毗鄰的區域——這也會提高緩存行的局部性。這都是用代碼的數據訪問模式的意識,聰明地重排序的原因。


如果你的代碼有多線程并發訪問一個結構體,就會有第三個問題:緩存行反彈(cache line bouncing)。為了減少代價高昂的總線通信,你應該組織你的數據,使得在緊湊的循環中,從一條緩存行中讀取,而在另一條緩存行中寫。


是的,這與之前關于把相關數據組成同樣大小的緩存行塊的指南有些矛盾。多線程是困難的。緩存行反彈以及其它的多線程優化問題是十分高級的話題,需要整篇關于它們的教程。這里我能做的最好的就就是讓你意識到這些問題的存在。


9. 其它封裝技術


當重排序與其他技術結合讓你的結構體瘦身時效果最好。如果你在一個結構體里有若干布爾型標志,舉個例子,可以考慮將它們減小到1位的位域,并且將它們封裝到結構體里的一個本會成為“水坑”的地方。


為此,你會碰到些許訪問時間上的不利——但是如果它把工作區擠壓得足夠小,這些不利會被避免緩存不命中的得益所掩蓋。


更普遍的,尋找縮小數據域大小的方式。比如在cvs-fast-export里,我用的一項壓縮技術里用到了在1982年之前RCS和CVS代碼庫還不存在的知識。我把64位的Unix time_t(1970年作為起始0日期)減少到32位的、從1982-01-01T00:00:00開始的時間偏移量;這會覆蓋2118年前的日期。(注意:如果你要玩這樣的花招,每當你要設定字段,你都要做邊界檢查以防討厭的錯誤!)


每一個這樣被縮小的域不僅減少了你結構體顯在的大小,還會消除“水坑”,且/或創建額外的機會來得到域重排序的好處。這些效果的良性疊加不難得到。


最有風險的封裝形式是使用聯合體。如果你知道你結構體中特定的域永遠不會被用于與其他特定域的組合,考慮使用聯合體使得它們共享存儲空間。但你要額外小心,并且用回歸測試來驗證你的工作,因為如果你的生命周期分析即使有輕微差錯,你會得到各種程序漏洞,從程序崩潰到(更糟糕的)不易發覺的數據損壞。


10. 工具


C語言編譯器有個-Wpadded選項,能使它產生關于對齊空洞和填充的消息。


雖然我自己還沒用過,但是一些反饋者稱贊了一個叫pahole的程序。這個工具與編譯器合作,產生關于你的結構體的報告,記述了填充、對齊及緩存行邊界。


11. 證明及例外


你可以下載一個小程序的代碼,此代碼用來展示了上述標量和結構體大小的論斷。就是packtest.c。


如果你瀏覽足夠多的編譯器、選項和不常見的硬件的奇怪組合,你會發現針對我講述的一些規則的特例。如果你回到越舊的處理器設計,就會越常見。


比知道這些規則更進一步,是知道如何以及何時這些規則會被打破。在我學習它們的那些年(1980年代早期),我們把不懂這些的人稱為“世界都是VAX綜合征”的受害者。記住世界上不只有PC。


12. 版本履歷


1.5 @ 2014-01-03


解釋了為什么不自動做結構體成員的重排序。

1.4 @ 2014-01-06


關于x86 Linux下雙精度的注意。


1.3 @ 2014-01-03


關于難以處理的標量實例、可讀性和緩存局部性及工具的段落。


1.2 @ 2014-01-02


修正了一個錯誤的地址計算。


1.1 @ 2014-01-01


解釋為什么對齊的訪問會更快。提及offsetof。各種小修復,包括packtest.c的下載鏈接。


1.0 @ 2014-01-01


初版


本文由 伯樂在線 - cjpan 翻譯自 Eric S. Raymond。

鏈接地址:http://blog.jobbole.com/57822/

總結

以上是生活随笔為你收集整理的失落的C语言结构体封装艺术的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

免费观看日韩 | 在线观看成人网 | 精品国产一区二区久久 | 免费国产ww | a级片网站 | www.eeuss影院av撸 | 亚州视频在线 | 精品一二三区 | 狠狠色网 | 91麻豆传媒 | 国产亚洲精品综合一区91 | 久久国产精品视频 | 免费看的黄色网 | 午夜国产一区二区三区四区 | 国产不卡毛片 | 亚洲精品黄| av在线短片| 激情图片qvod | 91av视频观看| a成人v| 欧美一级片免费观看 | 97视频播放 | 97人人澡人人添人人爽超碰 | 日韩在线观看视频中文字幕 | 日本aaa在线观看 | 国产精品免费一区二区三区在线观看 | 亚洲综合色丁香婷婷六月图片 | 国产精品成久久久久三级 | 国产精品视频免费在线观看 | 精品视频 | 一级黄色在线免费观看 | 日韩在线电影一区 | 黄色视屏av| 亚洲欧洲久久久 | 亚洲国产精品视频在线观看 | 亚洲午夜精品在线观看 | 免费黄色网址大全 | 绯色av一区| 91福利影院在线观看 | 天天天干天天射天天天操 | 国产精品久久久久久久久久免费 | 69热国产视频 | 激情婷婷欧美 | 久久午夜免费观看 | av爱干| 国产麻豆精品久久一二三 | 日本精品视频一区 | 婷婷丁香综合 | 99久久超碰中文字幕伊人 | 精品一区二区在线免费观看 | 亚洲精品成人av在线 | 中文字幕丰满人伦在线 | 性色va | 狠狠狠干狠狠 | 国产99re| 精品国产网址 | 欧美巨大荫蒂茸毛毛人妖 | 欧美午夜a | 色综合天天综合 | 日批视频在线观看免费 | 综合网成人| 成人毛片100免费观看 | 高清日韩一区二区 | 亚洲视频在线视频 | 欧美在线18 | 成人免费视频网 | 丁香六月婷婷 | 久久久精品国产一区二区三区 | 亚洲综合一区二区精品导航 | 久久久久欧美精品 | 久久久黄色 | .精品久久久麻豆国产精品 亚洲va欧美 | 99爱视频 | 国产亚洲精品无 | 在线观看av免费 | 爱爱av在线 | 久久综合九色综合久久久精品综合 | 午夜精品久久久久久久99无限制 | 成年人在线免费看视频 | 国产欧美日韩一区 | 午夜精品久久久久久久99 | 久久久久久久久久久久久久电影 | 99久久精品国产系列 | 日韩精品一区在线观看 | 久久亚洲成人网 | 久久成人免费电影 | 午夜免费福利视频 | 久久精品这里都是精品 | 中文字幕在线影院 | 亚洲国产欧美一区二区三区丁香婷 | 在线亚洲欧美日韩 | 欧美一二三专区 | 亚洲久久视频 | 在线 影视 一区 | 天天射天天色天天干 | a黄色一级 | 九色在线视频 | 伊人网av| 亚洲国内在线 | 亚州国产精品久久久 | 香蕉97视频观看在线观看 | 日韩激情在线视频 | 永久av免费在线观看 | 91热在线 | 日韩中文字幕免费在线播放 | 色噜噜日韩精品一区二区三区视频 | 香蕉在线观看视频 | 久久久999精品视频 国产美女免费观看 | av在线永久免费观看 | 激情久久影院 | 日韩免 | 成人精品国产免费网站 | 色a资源在线 | 综合激情婷婷 | 五月婷婷视频在线观看 | 探花在线观看 | 亚洲精品字幕 | 黄色国产成人 | 69av久久| 久久精品视频国产 | www日 | 免费黄a| av五月婷婷 | 午夜国产福利视频 | 成人免费观看a | 欧美精品亚州精品 | av激情五月 | 韩日三级在线 | 天天干天天操 | 久久夜色精品国产欧美乱 | 亚洲国产剧情av | av中文字幕网 | 亚洲精品在线看 | 久99视频| 日韩天堂在线观看 | 久久久国产精品网站 | 久久精品国产免费看久久精品 | 91精品国产欧美一区二区成人 | 久久精品视频在线观看免费 | 亚洲激情 | 99国产成+人+综合+亚洲 欧美 | 国产美女无遮挡永久免费 | 国产在线日本 | 日韩精品一区二区三区视频播放 | 国产中文字幕在线视频 | 五月天丁香综合 | 天天鲁天天干天天射 | 蜜桃视频日本 | 蜜桃视频日韩 | 国产精品久久久久久久毛片 | 色综合网 | 色国产视频 | 免费福利片 | 精品久久精品 | 天天草天天草 | 国产手机在线视频 | 久久在线视频精品 | 国产高清绿奴videos | 日韩av专区 | 欧美性爽爽 | 国产毛片aaa | 精品成人在线 | av在线电影播放 | 欧美日韩一区二区三区在线观看视频 | 国产99久久久精品 | 97色婷婷成人综合在线观看 | 久久免费视频在线观看6 | 在线中文字幕一区二区 | 极品久久久久 | 天天射天天艹 | 国产在线国偷精品产拍 | 欧美日本高清视频 | 亚洲最大成人免费网站 | 激情 一区二区 | 欧美影院久久 | 麻豆系列在线观看 | 狠狠色伊人亚洲综合成人 | 成人av资源| 久久久久久久久黄色 | 精品国产网址 | 成人国产精品久久久久久亚洲 | 在线观看亚洲成人 | 久免费视频 | 国产精品成人在线观看 | 日韩三级视频在线看 | 热久久最新地址 | 免费又黄又爽 | 美女久久久久久久 | 久热精品国产 | 天天干 天天摸 天天操 | 中文字幕欧美日韩va免费视频 | 日本精品一 | 亚洲精品www. | 国产精品亚洲综合久久 | 国产一区在线精品 | 99久久久国产精品美女 | 国产一区免费在线观看 | 在线免费观看的av | 亚洲人成网站精品片在线观看 | 97视频久久久 | 天堂入口网站 | www黄com| 高清久久久 | 亚洲国产成人在线 | 不卡av在线免费观看 | 国产综合视频在线观看 | 91成人精品观看 | 国产小视频国产精品 | 久久综合99 | 国内一级片在线观看 | 欧美日韩中| 日韩在线观看高清 | 亚洲欧美日韩国产精品一区午夜 | 玖玖精品在线 | 精品久久久久久国产偷窥 | 成人国产精品一区 | 91视频在线观看下载 | 国产视频精品免费 | 国内外激情视频 | 国产精品毛片久久久久久久 | 99av在线视频 | 成人午夜片av在线看 | 天天做日日做天天爽视频免费 | 91手机电影| 婷婷九月激情 | 91视频免费 | 中文字幕在线观看国产 | 日本资源中文字幕在线 | 久久免费一级片 | 精品视频免费久久久看 | 99免在线观看免费视频高清 | 国产99一区| 亚洲天堂va| 91精品视频一区二区三区 | 丁香高清视频在线看看 | 高清一区二区 | 欧美在一区 | 一区二区精品久久 | 欧美日韩观看 | 丁香婷婷综合激情五月色 | 成年人在线免费视频观看 | 在线国产专区 | 亚洲国产伊人 | 色吊丝在线永久观看最新版本 | 免费在线色视频 | 日日夜色 | 激情视频区 | 亚洲最大av | 福利视频网址 | www.五月婷婷.com | 久草精品在线播放 | 国产亚洲综合精品 | 日韩视频免费观看高清 | av成人免费在线观看 | 九九久久国产精品 | 最新久久免费视频 | 欧美色888 | 国产999在线 | 久久人91精品久久久久久不卡 | 成人亚洲网 | 美女精品国产 | 国产精品正在播放 | 色五月色开心色婷婷色丁香 | 国产一线二线三线性视频 | 久久天堂影院 | 色香网| 日本久久久影视 | 久久精品99 | 亚洲综合在线五月天 | 亚洲成色777777在线观看影院 | 久草在线视频免费资源观看 | 激情久久网 | 丝袜一区在线 | 色99网| 成人黄色在线观看视频 | 在线中文字幕电影 | 美女网站在线免费观看 | 中文字幕传媒 | 在线观看不卡视频 | 国产91aaa | 九九av | 久久国产免费视频 | 三级性生活视频 | 91tv国产成人福利 | 蜜臀久久99精品久久久无需会员 | 婷婷网站天天婷婷网站 | 综合五月 | 高清av中文在线字幕观看1 | 亚洲美女免费精品视频在线观看 | 超碰com| 人人盈棋牌 | 天天综合网 天天综合色 | 国产系列在线观看 | 成人毛片一区 | 在线观看日韩 | 日韩中文字幕免费电影 | 四虎在线免费观看视频 | 亚洲色图27p | 欧美日韩不卡在线 | 久久久久免费精品国产小说色大师 | 黄p网站在线观看 | 99超碰在线播放 | 精品一区在线看 | 久久久96| 欧美一级淫片videoshd | 久久久久高清 | 日日夜夜添 | 国产午夜麻豆影院在线观看 | 国产原创中文在线 | 色噜噜狠狠色综合中国 | 玖玖精品在线 | 久草视频精品 | 亚洲va欧美va人人爽春色影视 | 久久免费在线观看视频 | 黄色国产在线 | 久久9999久久 | 午夜成人免费电影 | 亚洲一区二区视频在线 | 久久影院一区 | 五月天婷婷丁香花 | 国产精品欧美 | 九九视频网站 | 国产丝袜一区二区三区 | 亚洲精品久久久久久国 | av一级一片| www.黄色 | 天天色天天色 | 一区二区三区免费在线观看 | 欧美性生活小视频 | 国产亚州精品视频 | 久久久久国 | 久久久综合精品 | 999成人国产 | 九九视频在线观看视频6 | 九九欧美视频 | 美女激情影院 | 国产亚洲精品久久 | av大全在线观看 | 一区二区三区日韩在线观看 | 草久电影| 久久99操| 国产日韩精品一区二区三区 | 久久精品视频免费播放 | 天天激情综合网 | 欧美天堂视频在线 | 国产码电影| 日日夜夜天天干 | 婷婷丁香激情综合 | 国产一卡在线 | 中文字幕丝袜 | 国产午夜三级一区二区三桃花影视 | 精品国产一区二区三区男人吃奶 | 久草在线电影网 | 久久成人国产精品一区二区 | 69av国产 | 国产一区国产精品 | 免费网址你懂的 | 久久免费播放 | 欧美大片第1页 | 天堂在线v | 噜噜色官网 | 免费a级观看| 国产99久久久久久免费看 | 黄色av免费 | 久久久午夜剧场 | 99精品免费久久久久久久久日本 | 欧美日韩国产xxx | 一区二区三区 中文字幕 | 伊人一级| 美女免费黄视频网站 | 中文字幕人成人 | 亚洲精品理论片 | 亚洲精品永久免费视频 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 午夜精品电影一区二区在线 | av在线一二三区 | 色婷婷av一区 | 麻豆91精品视频 | 婷婷色网视频在线播放 | 欧美色伊人 | 午夜美女视频 | 国产一区免费在线观看 | www.夜夜爽| 精品国产三级a∨在线欧美 免费一级片在线观看 | 久久久久久久18 | 日本中文字幕在线看 | 亚洲精品国产精品乱码在线观看 | 午夜久久影视 | 狠狠88综合久久久久综合网 | 成年人在线播放视频 | 久久人人添人人爽添人人88v | 久久精品视频在线 | 天天色天| 波多在线视频 | 亚洲激情影院 | 综合色站 | 亚洲精品中文字幕视频 | 婷婷综合五月天 | 97av精品| 天天色图| 免费黄av | 99热高清 | 色视频成人在线观看免 | 久草在线免 | av电影免费在线看 | 亚洲区二区 | 日韩视频一区二区三区 | 波多野结衣在线视频一区 | 日韩影视在线观看 | 超碰国产人人 | 成+人+色综合 | 亚洲成人av电影在线 | 97狠狠干 | 丁香影院在线 | 亚洲天堂香蕉 | 97在线观 | 日韩av网站在线播放 | 一级α片免费看 | 夜夜操天天干, | 视频在线亚洲 | 成人午夜影院在线观看 | 免费开视频| 一区二区不卡视频在线观看 | 久久黄色片子 | 99福利影院 | 欧美a在线免费观看 | 激情视频区 | 很黄很黄的网站免费的 | 日批视频 | 片网站 | 久久美女电影 | 99精品热视频只有精品10 | 久久国产精品免费一区二区三区 | 成人毛片在线观看 | 美女在线黄 | 99免费视频 | 日韩免费二区 | 亚洲午夜在线视频 | 国产在线观看91 | 日韩免费三级 | 天天干天天干天天射 | 国产精品一区二区免费在线观看 | 精品亚洲男同gayvideo网站 | www.五月天| 天堂网一区二区 | 人人舔人人爱 | 亚洲乱码精品久久久久 | 97视频在线免费观看 | 欧美黄色高清 | 久久免费视频7 | 国产专区第一页 | 国产色女人 | 99人久久精品视频最新地址 | 成人小视频在线免费观看 | 国产精品欧美精品 | 91在线看视频免费 | 日韩精品最新在线观看 | 亚洲免费在线观看视频 | 亚洲精品午夜视频 | 97夜夜澡人人双人人人喊 | 国产精品久久久777 成人手机在线视频 | 欧美日韩中文字幕在线视频 | 久久综合视频网 | 超碰在线97国产 | 欧美日韩午夜在线 | 啪一啪在线 | 国产女v资源在线观看 | 91色在线观看 | 在线观看日韩av | 亚洲色图 校园春色 | 久久免费在线视频 | 99视频精品全部免费 在线 | 深夜福利视频在线观看 | www色综合| 国产精品美女毛片真酒店 | 免费在线观看日韩视频 | 国产精品黄色影片导航在线观看 | 亚洲电影成人 | 日韩视频中文 | 精品久久久亚洲 | 亚洲91视频| 国内精品久久久久久 | 中文字幕免费观看视频 | 天天综合网 天天综合色 | 少妇性bbb搡bbb爽爽爽欧美 | 国产91影院 | 国产成人精品在线播放 | 国产美腿白丝袜足在线av | 欧美在线1 | 国产精品久久久久影院日本 | 国产精品久久久久久久久免费看 | 亚洲免费国产视频 | 97国产精品 | 久久久久久久99 | 欧美日韩免费网站 | 国产亚洲成av人片在线观看桃 | 永久精品视频 | 国产精品视频免费在线观看 | 免费在线观看国产精品 | 久色 网| 亚洲成人精品在线 | 激情av五月婷婷 | 黄p网站在线观看 | 成人免费亚洲 | 人人爽人人干 | 黄毛片在线观看 | 中文理论片 | 亚洲精品午夜久久久久久久久久久 | a级国产乱理论片在线观看 特级毛片在线观看 | 亚洲一片黄 | 国产青草视频在线观看 | 国产福利a | 免费视频在线观看网站 | 久久国产精品一国产精品 | 中文字幕免费观看全部电影 | 五月天,com | 中文字幕一二 | 日韩电影在线看 | 久久美女免费视频 | 久久久高清免费视频 | 日韩一级片网址 | 最近免费中文字幕大全高清10 | 国产精品99久久久久久有的能看 | 超碰人人在线 | 五月婷婷久久丁香 | 人人草在线观看 | 日韩美女黄色片 | 久久99久久99 | 香蕉久久久久久久 | 国产麻豆剧传媒免费观看 | 中文字幕 国产专区 | 日本黄色免费在线 | 97在线观看免费视频 | 亚洲视频精品在线 | 中文字幕一区二区三区在线视频 | www.天天射 | 园产精品久久久久久久7电影 | 三级黄色大片在线观看 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 成年人在线播放视频 | av免费在线免费观看 | 婷婷色在线 | 最近日本mv字幕免费观看 | 97看片吧 | 成人毛片久久 | avlulu久久精品| 久久精品欧美一区二区三区麻豆 | 国产黄网在线 | 日日爱视频 | 免费日韩 精品中文字幕视频在线 | 五月综合网站 | 国产高清99 | 免费精品人在线二线三线 | 视频在线99| 成人在线超碰 | av在线免费观看不卡 | 美女黄视频免费看 | 日本精品在线视频 | 99久久精品国产一区 | 午夜狠狠干 | 国产精品999久久久 久产久精国产品 | 日韩在线观看影院 | 色婷婷国产在线 | 91网址在线观看 | 日本韩国在线不卡 | 欧美综合在线视频 | 日本中文字幕久久 | 最近日韩中文字幕中文 | 国产精品视频99 | 国产精品免费久久 | 成人一级片视频 | 欧美日韩精品在线视频 | 亚洲精品在线免费观看视频 | 国内精品久久久久国产 | 久久兔费看a级 | 夜夜躁日日躁狠狠躁 | 亚洲干视频在线观看 | 91精品一区二区在线观看 | 久久久私人影院 | 狠狠色丁香久久婷婷综合五月 | 天天操天天干天天操天天干 | 久久草在线精品 | 亚洲精品美女在线观看 | 婷婷精品国产欧美精品亚洲人人爽 | 久久久久美女 | 久久艹在线观看 | 久久精品一区二区三 | 久久精品看片 | 97碰视频| 91亚洲狠狠婷婷综合久久久 | 免费a级观看 | 在线电影 一区 | 99国产成+人+综合+亚洲 欧美 | 欧美孕妇与黑人孕交 | 久久国产精品一二三区 | 国产亚洲精品久久久久久久久久 | 久久夜色精品国产欧美一区麻豆 | av中文字幕剧情 | 91精品国产三级a在线观看 | 激情久久五月 | 国产五十路毛片 | 91在线播 | 国产成人精品一区二区在线观看 | 手机成人av在线 | 精品国产免费观看 | 美女视频黄频大全免费 | 中文字幕日韩在线播放 | 去干成人网 | 国产一级视频免费看 | 亚洲免费视频在线观看 | 亚洲国产欧美一区二区三区丁香婷 | 麻豆精品传媒视频 | 国产精品自拍在线 | 日韩在线观看第一页 | 日韩网站一区 | 精品在线视频播放 | 少妇bbbb揉bbbb日本 | 久久精品久久久精品美女 | 欧美精品v国产精品 | 亚洲精品一区二区三区在线观看 | 国产在线精品一区二区不卡了 | 日韩欧美精品在线观看视频 | 久久国产精品精品国产色婷婷 | 国产麻豆剧果冻传媒视频播放量 | 岛国av在线不卡 | 欧美精品一区二区在线观看 | 成人国产网站 | 在线视频 你懂得 | 国产免费亚洲高清 | 伊人影院av | www.夜色.com | 91精品黄色 | 色.www| 午夜av免费 | 国产精品乱看 | 亚洲日本va午夜在线电影 | 欧美aaa一级| 亚洲a在线观看 | 少妇搡bbbb搡bbb搡69 | 天堂在线免费视频 | 岛国大片免费视频 | 在线观看完整版免费 | 美女视频黄免费的 | av电影一区 | 亚洲精品理论 | 欧美激情视频一二区 | 亚洲综合在线播放 | 国产福利一区二区三区视频 | 1024在线看片 | 激情开心网站 | 日日干av| 久久视频精品 | 成人免费毛片aaaaaa片 | 黄色成人91| 免费观看一区二区 | 国产精品国产三级国产不产一地 | 国产精品麻豆免费版 | 亚洲国产中文在线观看 | 激情偷乱人伦小说视频在线观看 | 91麻豆精品国产91 | 91专区在线观看 | 在线观看的av网站 | 欧美精品免费在线 | 2019av在线视频 | 久久成人久久 | 免费a v视频| 欧美一级裸体视频 | 日韩在线一级 | 在线看av的网址 | 国产专区精品 | 婷婷六月中文字幕 | 天天玩天天操天天射 | 天天天天天操 | 免费高清在线观看电视网站 | 亚洲伊人网在线观看 | 日本精品视频免费观看 | 日日夜夜操av | 在线v | 日韩av一区在线观看 | 在线免费视频一区 | 日韩中文在线观看 | 区一区二区三在线观看 | 久草久草在线 | 韩国av一区二区三区在线观看 | 成人免费看片网址 | 欧洲成人免费 | 综合久久久久久久久 | 成人四虎影院 | 狠狠干五月天 | 在线观看精品一区 | 涩av在线 | 爱爱av网| 久久久久久在线观看 | 九九视频这里只有精品 | 国产精品久久久 | 日韩性片| 超碰97中文| 国产一级高清 | 国产成人久久精品77777综合 | 中文字幕人成人 | 综合久色| av在线色| 一区二区三区在线观看 | 久草在线中文888 | 成人黄色免费在线观看 | 国产精品国产三级国产aⅴ无密码 | 亚洲成人精品国产 | 91视频高清完整版 | 国产高清视频免费 | 免费观看成年人视频 | 人交video另类hd | 91精品人成在线观看 | 久久久久久久免费观看 | 久久久久久久久久久久电影 | 国产 日韩 欧美 中文 在线播放 | av网站播放 | 亚洲 综合 专区 | 最新黄色av网址 | 成人九九视频 | 日日摸日日添夜夜爽97 | 国产成人久久av免费高清密臂 | 黄a在线观看 | 99爱爱| 久久女同性恋中文字幕 | 日韩有码中文字幕在线 | 国产免费观看久久黄 | 国产婷婷精品 | 91大神在线观看视频 | 欧美色久| 国产精品一区二区久久精品爱微奶 | 中文字幕日本电影 | 国产最新91 | 欧美xxxxx在线视频 | 欧美一区二区三区激情视频 | 大荫蒂欧美视频另类xxxx | 亚洲电影成人 | 91精品视频导航 | 狠狠干狠狠久久 | 中国一级片视频 | 日本三级在线观看中文字 | 中文字幕在线观看第一页 | 视频成人永久免费视频 | av综合 日韩 | 伊人狠狠色丁香婷婷综合 | 天天干天天草 | 五月婷婷在线播放 | 亚洲中字幕 | 五月婷婷开心中文字幕 | 黄色一级免费 | 丁香六月久久综合狠狠色 | 亚洲日本一区二区在线 | 免费福利在线播放 | 高清精品久久 | 午夜精品电影 | 久久99欧美 | 91免费在线| 337p日本欧洲亚洲大胆裸体艺术 | 99久久精品国产欧美主题曲 | 正在播放一区二区 | 久久激情网站 | 波多野结衣久久资源 | 久久久久国产成人免费精品免费 | 国产短视频在线播放 | 国产一区二区三区免费视频 | 天天看天天干 | 久久精品99国产精品酒店日本 | 99精品国产免费久久久久久下载 | 亚洲精品乱码久久久久久蜜桃动漫 | 久久爱www. | 九色激情网 | 欧美日韩亚洲在线观看 | 黄色福利 | 日日夜夜精品免费视频 | 欧美激情精品久久久久久免费 | av日韩在线网站 | 国产高清av在线播放 | 黄色免费看片网站 | 久久精品视频4 | 免费看的黄色片 | 久久综合九色综合97_ 久久久 | 国产成人精品一区二区三区在线观看 | 黄色a级片在线观看 | 亚洲特级毛片 | 免费高清av在线看 | 日韩久久久久久 | 日韩二三区| 中文字幕在线观看1 | 96国产精品视频 | 99免费在线视频 | 玖操| 一区二区三区在线观看免费视频 | 国产精品成人免费 | 日本精品小视频 | 狠狠的操狠狠的干 | 91人人在线 | 一区 二区电影免费在线观看 | 久草在线视频在线观看 | 久久久久久久免费观看 | 中文字幕欧美三区 | 久草9视频 | 成人影片免费 | 久久视频国产 | www.伊人网| 月丁香婷婷 | 精选久久| 在线国产精品一区 | 在线视频观看成人 | 亚洲精品美女久久久 | 在线观看av不卡 | 亚洲精品裸体 | 久久久福利影院 | 中文有码在线 | 黄色网免费 | 91精品毛片 | 久久久久免费网站 | 激情婷婷在线观看 | 国产区高清在线 | 成人免费观看视频网站 | 91亚瑟视频| av理论电影 | 黄色小说在线免费观看 | 欧洲激情在线 | 亚洲视频在线观看网站 | 日本久久免费视频 | 狠狠狠干狠狠 | 久久av电影 | 狠狠色丁香婷综合久久 | 四虎5151久久欧美毛片 | 久久99婷婷 | 九九九热精品免费视频观看 | 精品一二三区 | 国产大陆亚洲精品国产 | 国产精品黑丝在线观看 | 2023国产精品自产拍在线观看 | 国偷自产视频一区二区久 | 天天精品视频 | 又黄又刺激又爽的视频 | 黄污网站在线观看 | 国产精品欧美一区二区三区不卡 | 97夜夜澡人人爽人人免费 | 久草在线免费看视频 | 9幺看片 | 五月婷婷六月丁香 | 国产资源在线免费观看 | 黄色的视频 | 成人免费看视频 | 一区二区精品国产 | 激情婷婷久久 | 久久精品一区二区国产 | 久久久综合香蕉尹人综合网 | 成人免费网站视频 | 探花视频在线版播放免费观看 | 久久精品草 | 不卡视频一区二区三区 | 激情久久伊人 | 天天插综合 | 伊甸园永久入口www 99热 精品在线 | 综合中文字幕 | 91精品啪在线观看国产线免费 | 中文字幕亚洲字幕 | 国产香蕉97碰碰久久人人 | 在线免费观看的av网站 | 国内精品二区 | 国产福利91精品一区 | 久久99久久精品国产 | 一级大片在线观看 | 亚洲欧美激情精品一区二区 | 久久精品久久精品久久精品 | 国产精品国产三级国产aⅴ入口 | www.97视频 | 在线免费观看av网站 | 99精品国产一区二区 | 色综合五月 | 成人一区二区在线 | 天天操比 | 91精品免费在线视频 | 这里有精品在线视频 | 欧美激情另类文学 | 国产色爽 | 精品国产免费人成在线观看 | 中文字幕亚洲不卡 | 97人人添人澡人人爽超碰动图 | 国产专区视频在线 | 久久97超碰 | 东方av免费在线观看 | 在线天堂日本 | 精品国偷自产在线 | 欧美激情在线网站 | 99久久精品国产毛片 | 91麻豆精品国产自产 | 狠狠干夜夜操天天爽 | 国产精品一区二区在线观看免费 | 人人爽人人爽人人片av免 | 日韩综合一区二区三区 | 91刺激视频 | 国产日韩欧美在线播放 | 香蕉在线观看视频 | 黄av在线| 国产看片网站 | 久久精品视频18 | 国产成人在线播放 | 久久久久久97三级 | 日韩在线视频免费观看 | 国内精品久久久久 | 久久人人爽人人人人片 | 五月婷婷操 | 亚洲免费视频观看 | 少妇视频一区 | 亚洲精品黄色在线观看 | 在线草| 久久美女视频 | 九九久久国产 | 欧美日韩国产二区 | 亚洲一区精品二人人爽久久 | 久久香蕉一区 | 日韩有码第一页 | 国产精品免费成人 | 男女男视频 | 激情 婷婷 | 国产一级精品绿帽视频 | 日日摸日日添日日躁av | 久久久受www免费人成 | 超碰在线网 | 久久亚洲美女 | 免费看色网站 | 成年人黄色大片在线 | 日韩电影久久 | 日韩不卡高清视频 | 精品久久久久一区二区国产 | 黄色在线观看www | 日日夜夜狠狠 | 天天插狠狠干 | 97在线观看免费观看高清 | 久久官网 | 99精品区| 伊人黄 | 精品一区二区影视 | 在线a人片免费观看视频 | 久久伊人热 | 五月综合网站 | 中文字幕免费观看全部电影 | 日韩免费看的电影 | 亚洲激情综合 | 成人一级 | 超级av在线 | 欧美日韩免费一区二区 | 四虎在线观看视频 | 免费高清国产 | 国产亚洲成av人片在线观看桃 | 国产精品情侣视频 | 黄色一级在线免费观看 | 色视频在线看 | av三区在线 | 天天色天天 | 日本韩国欧美在线观看 | 久久精品第一页 | 色婷婷亚洲 | 久久女同性恋中文字幕 | 国产精品99久久久久久久久 | 国产一级二级在线播放 | 日韩国产精品毛片 | 成人黄色在线观看视频 | 久久这里只有精品23 | 在线免费观看视频 | 国产人成精品一区二区三 | 国产日韩精品欧美 | 天天天干天天射天天天操 | 日本久久久影视 | 欧美精品免费一区二区 | 日韩大片在线免费观看 | 欧美性久久久久久 | 日韩经典一区二区三区 | 麻豆视频在线免费观看 | 国产精品成人aaaaa网站 | 西西444www大胆高清图片 | 日日摸日日添日日躁av | 中文字幕av专区 | 欧美日韩高清在线观看 | 最近中文字幕 | 97人人超| 久久亚洲欧美日韩精品专区 | 97超级碰碰碰视频在线观看 | 女人18精品一区二区三区 | 干干操操 | 丰满少妇久久久 | 色资源网免费观看视频 | 黄色a在线 | av品善网| 久久久午夜精品理论片中文字幕 | 国产精品igao视频网网址 | 成人久久网 | av免费在线免费观看 | 婷婷久久丁香 | 国产99久久久国产精品免费看 | 国产精品麻豆99久久久久久 | 国产人成精品一区二区三 | 中文电影网 | 国产在线精品播放 |