《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 王垠:談編譯器

王垠:談編譯器

2015-09-18
關(guān)鍵詞: 編譯器

  由于早期的 Lisp 編譯器生成的代碼效率普遍低下,成為了 Lisp 失敗的主要原因之一。而現(xiàn)在的高性能 Lisp 編譯器(比如 Chez Scheme),其實已經(jīng)可以生成非常高效的代碼,甚至可以匹敵 C 程序的速度。如果你看得到我腦子里的東西,就會明白這完全不是吹牛,對我來說這是科學的結(jié)論。我在這里介紹一下我寫 Scheme 編譯器的經(jīng)歷,也許你就會從根本上明白為什么我會這么自信。這里的介紹其實不止針對函數(shù)式語言,而且針對所有語言的編譯器。
  編譯器是一種神秘,有趣,又無聊的的程序。說它神秘,是因為只有非常少的人知道如何寫出優(yōu)秀的編譯器。這些會寫編譯器的人,就像身懷絕技的武林高手一樣神出鬼沒。說它有趣,是因為編譯器的技術(shù)里面含有大量的“哲學問題”和深刻的理論(比如 partial evaluation)。但為什么又說它無聊呢?因為你一旦掌握了編譯器技術(shù)里面最精華的原理,就會發(fā)現(xiàn)其實說來說去就那么點東西。編譯器代碼里面的“創(chuàng)造性含量”其實非常低。有些固定的“模式”,幾十年都不變。寫了幾個編譯器之后你就會發(fā)現(xiàn),自己越來越喜歡做被很多人不齒的“界面”一類的東西。這就像做科學做到頭了,想嘗嘗藝術(shù)的滋味。
  好了不打擊你積極性了,先來說一說為什么早期的 Lisp 編譯器生成的代碼效率低下吧。在函數(shù)式語言的早期,由于它比普通的語言多了一些表達力強大的構(gòu)造(比如函數(shù)作為值傳遞),人們其實都不知道如何實現(xiàn)它的編譯器。很多 Scheme 的編譯器其實只是把 Scheme 編譯成 C,然后再調(diào)用 C 語言的編譯器。Haskell 的編譯器 GHC 在早期也是這樣的。而且由于 C 編譯器生成的匯編代碼不完全符合 Haskell 的需求,GHC 里面含有一個 Perl 腳本,專門用于調(diào)整這匯編代碼的結(jié)構(gòu)。這個 Perl 腳本,由于它的工作方式毫無原則,被叫做 evil mangler。現(xiàn)在這個東西已經(jīng)不存在于 GHC 里面,但從它曾經(jīng)的存在你可以看出,其實函數(shù)式編譯器的技術(shù)在早期是相當混沌的。
  在我看來,早期 Lisp 編譯器出現(xiàn)的主要問題,其實在于對編譯的本質(zhì)的理解,以及編譯器與解釋器的區(qū)別。解釋器之所以大部分時候比編譯器慢,是因為解釋器“問太多的問題”。每當看到一個構(gòu)造,解釋器就會問:“這是一個整數(shù)嗎?”“這是一個函數(shù)嗎?”…… 這些問題,在編譯器的理論里面叫做“解釋開銷”(interpretive overhead)。編譯的本質(zhì),其實就是在程序運行之前分析并且一勞永逸的回答這些“問題”。這樣編譯后的代碼就不再問這些問題,因為它直接就知道那個位置應(yīng)該出現(xiàn)什么構(gòu)造,應(yīng)該做什么事。早期的 Lisp 編譯器,以及現(xiàn)在的很多 Scheme 編譯器出現(xiàn)的問題其實在于,它們并沒有完全的消除這些問題,或者根本沒有消除這些問題。
  當我最早學習 Scheme 語言的時候,我發(fā)現(xiàn) Scheme 有太多的實現(xiàn),PLT Scheme(現(xiàn)在叫 Racket), MIT Scheme, VSCM, Scheme 48, Bigloo, Chicken, Guile, ...讓人搞不清楚哪一個更好。有些 Scheme 實現(xiàn)顯得更高級一些,但實際用起來總是感覺不放心,因為你心里總想著,這代碼編譯出來到底能不能跟 C 語言代碼比?這也是我后來開始使用 Common Lisp 的原因,因為 Common Lisp 似乎有挺多高效的編譯器(CMUCL,Lispworks,Allegro 等等)。
  直到有一天,我發(fā)現(xiàn)了 Chez Scheme,它改變了我對 Scheme 編譯器,以至于整個編譯器概念的理解。當時我只下載了 Chez Scheme 的免費版本,叫做 Petite。Petite 與正式版 Chez Scheme 的區(qū)別是,它不輸出二進制代碼,所以你不能把編譯后的代碼拿去銷售。另外出于商業(yè)目的,Petite 的出錯信息非常的“簡約”,以至于有時候你不得不用其它的 Scheme 實現(xiàn),才能找到 bug 的所在。但是一運行就見分曉,Petite 被作為一個“解釋器”直接運行 Scheme 代碼,比其他的 Scheme 實現(xiàn)編譯后的代碼速度還要快很多倍。
  Chez Scheme 導致了我命運的改變,怎么也沒有想到,我最終會成為它的作者的學生。我非常有幸的在 Indiana 大學參加了 Chez Scheme 的作者 R. Kent Dybvig(大家都叫他 Kent,雖然他的名字其實叫 R.)所授的編譯器課程,并且跟他合作研究了一個學期。我可以說,這個課程恐怕是世界上最好的編譯器課程,而我搭上了它的“末班車”。Kent 現(xiàn)在已經(jīng)離開了 Indiana 大學,被重金聘請到某大公司進行一些機密的項目。誰都不知到他在干什么。
  Kent 單槍匹馬的寫出了 Chez Scheme,世界上唯一的商業(yè) Scheme 編譯器,并且為此成立了自己的公司(Cadence Research Systems)。Chez Scheme 價格不菲,并且不明碼實價。它的價格跟項目的大小和公司的規(guī)模有關(guān)。有些大公司花重金購買 Chez Scheme 用于一些核心的項目。其中有些為了保證這編譯器的安全,又花了好幾倍的價錢買下了它的源代碼。Kent 的公司只有他一個人,不用操心管理,也不用操心銷售。所以他過的非常舒服,基本是一個不愁吃穿,不問世事的人。
  Kent 是我一生中見過的最神秘,最酷的人。他幾乎從來不表揚任何人,但也不貶低任何人。從冷漠的言語之中,你能感覺到他的內(nèi)心相對于任何人的完全平等。他的心里有許許多多的秘密,你需要一些技巧才能套出他的真言。他很少發(fā)表論文,卻把別人的論文全都看得很透。沒有人知道他的核心技術(shù),他也從來不在乎別人是否了解他的水平。他的名字叫 R. Kent Dybvig,卻從來沒有人知道那個 R. 是哪一個名字的簡寫。他的照片從來不放在網(wǎng)上,如果你真想知道他長得什么樣,我在網(wǎng)上找到一個跟他長得非常相似的人的照片:
  Chez Scheme 生成的“目標代碼”效率之高,我還沒有見到任何其它 Scheme 編譯器可以與之匹敵。而它的“編譯速度”之快,沒有任何語言的任何編譯器可以相提并論(注意我去掉了“Scheme”這個限定詞)。Chez Scheme 可以在 5 秒鐘之內(nèi)完成從頭到尾的自我編譯。想想編譯 GCC 或者 GHC 需要多少時間,你就明白差距了。
  另外值得一提的是,Chez Scheme 從頭到尾都是 Kent 一個人的作品。它的工作原理是從 Scheme 源程序一直編譯到機器代碼,而不依賴任何其他語言的編譯器。它甚至不依賴第三方的匯編器,所有三種體系構(gòu)架(Intel, ARM, Sparc)的匯編器,都是 Kent 自己寫的。為什么這樣做呢?因為幾乎沒有其它人的編譯器代碼能夠達到他的標準。連 Intel 自己給自己的處理器寫的匯編器,都不能滿足他的要求。
  如果你上了 Kent 的課,再來看看普通的編譯器書籍(比如有名的 Dragon Book),或者 LLVM 的代碼,你就會發(fā)現(xiàn) Kent 的水平其實遠在這些知名的大牛之上。我為什么可以這么說呢?因為如果你的水平在別人之下,你自己都會對這種判斷產(chǎn)生懷疑。而如果你超過了別人,他們的一言一行,他們的每一個錯誤,都像是處于你的顯微鏡底下,看得一清二楚。實話實說吧,在編譯器這個領(lǐng)域,我覺得 Kent 很有可能就是世界的 No.1。
  如果你不了解 Scheme 的編譯器里面有什么東西,也許就會輕視它的難度。Scheme 是比 C 語言高級很多的語言,所以它的編譯器需要做比 C 語言的編譯器多很多的事情。在 Kent 的編譯器課程的前半段,我們其實本質(zhì)上是在實現(xiàn)一個 C 語言的編譯器,把一種用“S表達式”表示的中間語言,編譯為 X64 匯編代碼。在后半學期的課程中,我們才加入了各種 Scheme 的先進功能,比如函數(shù)作為值(需要進行 closure conversion 以及 closure 優(yōu)化),尾遞歸優(yōu)化(tail-call optimization),等等。另外,我還自己為它加入了一種非常漂亮而先進的技術(shù),叫做 online partial evaluation。這種技術(shù)可以在一個 pass 就完成普通編譯器需要好幾個 pass 才能完成的優(yōu)化。所以你看到了,C 語言的編譯器其實連這個 Scheme 編譯器的一半難度都不到。
  Kent 的課程編譯器有非常好的結(jié)構(gòu),它被叫做“nanopass 編譯器構(gòu)架”。因為它的每一個 pass 只做很小的一件事情,然后這些 pass 被串聯(lián)起來,形成一個完整的編譯器。你也許發(fā)現(xiàn)了,這其實就是 LLVM 的構(gòu)架。但是我可以告訴你,我們的課程編譯器比 LLVM 干凈利落許多,處于遠遠領(lǐng)先的地位。每一節(jié)課,我們都學會一個 pass。每一個講義,都非常精確的告訴你需要干什么。每一次的作業(yè),提交的時候都會經(jīng)過上百個測試(當然 Kent 不可能把 Chez Scheme 的測試都給我們),如果沒有通過就會被拒絕接受。這些測試也可以下載,用于自己的調(diào)試。有趣的是,每一次作業(yè)我們都需要提交一些自己寫的新測試,目的是用于“破壞”別人的編譯器。所以我們每次都會想出很刁鉆的輸入代碼,讓同學的日子不好過。當然是開玩笑的,這種做法其實大大的提高了我們對編譯器測試的理解和興趣,以及同學之間的友誼。這比起我曾經(jīng)在 Cornell 選過(然后 drop 掉)的編譯器課程,真是天壤之別。
  在課程的最后,我們做出了一個完整的編譯器,可以把 Scheme 最關(guān)鍵的子集,編譯到 X64 匯編代碼,然后通過 GNU 的匯編器,匯編成機器代碼。在最后的一節(jié)課,Kent 對我們的學期做了一個總結(jié)。他說:“你們現(xiàn)在寫出的這個編譯器里面,含有很多先進的技術(shù)。也許過一段時間回頭看這段代碼,你們才會發(fā)現(xiàn)它的價值。如果你們覺得自己已經(jīng)成為了編譯器的專家,那我就告訴你們,你們提交的最快的編譯器,編譯速度比起 Chez Scheme 慢了 700 倍。但是不要灰心,我告訴你們哪些地方可以改進……”
  只有極少數(shù)的人見到過 Chez Scheme 的源代碼,我沒有看見過。但是見到過它的人告訴我,Chez Scheme 里面其實只有很少幾個 pass,而不是像我們的課程編譯器有 50 個左右的 pass,這節(jié)省了很多用于“遍歷”代碼樹所需要的時間。Chez Scheme 只使用了一些非常簡單的算法,沒有使用論文里很復雜的方法,這也是它速度快的原因之一。比如它的寄存器分配,沒有使用“圖著色”(graph coloring)方法,而是使用非常簡單的類似 linear scan 的算法,最后代碼的效率卻更高。另外,Scheme 使用“S表達式”作為它的語法,使得“語法分析”的速度非常之快。其它語言由于使用了復雜的語法,挺大一部分編譯時間其實花在了語法分析上面。
  實際上,Chez Scheme 早就有了超越 linear scan, SSA 之類的技術(shù),Kent 卻從來沒有為它們發(fā)表論文。這是因為他自私嗎?不。如果你問他,他還是會告訴你他用的是什么方法。但是具體的細節(jié),卻是解釋起來非常費事的事情,他為什么無緣無故要費工夫跟你解釋呢?所以很多時候,我都是自己摸索出解決方案,再去套他的口氣,看他是不是一樣的做法。有趣的是在課程進行之中的時候,我發(fā)現(xiàn)我的有些突發(fā)靈感的做法,其實超越了 Chez Scheme,以至于在某些 pass 會生成比它還要高效的代碼,然而我的編譯器代碼卻比它的還要短小(當然絕大部分時間我的代碼不如 Chez Scheme)。于是我就隱約的發(fā)現(xiàn),Kent 有時候會悄悄的花時間看我的作業(yè),想搞明白我是怎么做的,但他卻不想讓我知道。有一天開會的時候 Kent 沒有來,Kent 的編譯器課程的助教 Andy 不小心說漏了嘴:“因為你寫的代碼,Kent 還在進行一些偵探工作……” 悄悄的從任何人那里得到啟發(fā),吸收并且融入到自己的能力里面,也許就是 Kent 練就如此蓋世神功的秘訣。
  我想,這篇文章就該到此結(jié)束了。寫這些東西的目的,其實只是樹立人們對于函數(shù)式語言編譯器的信心。它們有些其實比 C 和 C++ 之類語言的編譯器高明很多。我沒有時間也沒有精力去講述這編譯器里面的細節(jié),因為它實在是非常困難,卻又非常優(yōu)雅的程序。如果你有興趣的話,可以看看我最后的代碼。由于版權(quán)原因,有些輔助部件我不能放在網(wǎng)上,所以你并不能運行它,只能看一個大概的形狀。如果你需要一個 Scheme 版本用于學習的話,Chez Scheme 有一個免費的版本叫做 Petite Chez Scheme,可以免費下載。因為 Petite 不提供友好的出錯信息,所以我也推薦 Racket 作為一個替補。

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 黄色天天影视 | 中国毛片视频 | 丁香花小说手机在线观看免费 | 91麻豆精品国产91久久久久久久久 | 精品无码国产一区二区三区51安 | 香港三级日本三级韩国三级 | 亚洲7天堂人人爽人人爽 | 娇妻玩4p被三个男人伺候电影 | 久久三 | 先锋av资源在线 | 国产乱肥老妇女精品视频网站 | 成年美女黄网站色大免费视频 | 日韩黄| 成人免费大片在线观看 | 91五月婷蜜桃综合 | 夜夜躁狠狠躁日日躁av麻豆 | 日本黄色www | 18禁毛片无遮挡嫩草视频 | 男人猛躁进女人免费播放 | 国产女s调教男m免费网站 | 国产精品9999久久久久仙踪林 | 天天色综合图片 | 亚洲蜜桃精久天干天干天啪啪夜l | 天天干天天色天天 | 国产精品对白交换绿帽视频 | 欧洲一区二区三区四区 | 99精品免费久久久久久久久日本 | 免费国产在线精品一区二区三区 | 久久久xxx| 97精品人妻一区二区三区香蕉 | av中文字幕第一页 | 成人国产精品秘片多多 | 人av在线 | 在线观看中文字幕 | 日批视屏| 国产精品成人免费看片 | dy888亚洲精品一区二区三区 | 99久久精品一区二区 | 日本黄漫动漫在线观看视频 | 色综合99久久久无码国产精品 | 亚洲人成网亚洲欧洲无码 | 国内精品久久久久久久日韩 | 91精品国产综合久久小仙女图片 | 99re国产精品 | 成人国产片 | 女人18毛片毛片毛片毛片区二 | 77777亚洲午夜久久多人 | 亚洲国产日韩欧美一区二区三区 | 天天爽夜夜爽夜夜爽精品视频 | 免费人成又黄又爽的视频 | 亚日韩av| 2018天天干天天射 | 无码欧精品亚洲日韩一区 | 男女一级黄色 | 乌克兰少妇性做爰 | av国产片| 午夜人体一级裸片免费观看 | 7777精品久久久大香线蕉小说 | 波多野结衣av高清一区二区三区 | 蜜桃av噜噜一区二区三 | 久久机热这里只有精品 | 黄色福利站 | 黄色无毒视频 | 免费在线色 | 国产露脸4p交换视频观看 | 波多野结衣一二三区 | 九色porny丨精品自拍 | 少妇粉嫩无套内谢 | 国产精品午夜在线观看 | 欧美视频第二页 | 最新中文无码字字幕在线 | 欧洲中文字幕 | 亚洲卡一卡二 | 国产成人啪精品视频免费软件 | 91精品欧美一区二区三区 | 99精品国产自在现线10页 | 人妻奶水人妻系列 | 夜夜骑天天操 | 无码人妻丰满熟妇精品区 | 超碰97色 | 中文字幕中出 | 青青草成人免费视频 | 久久久久久亚洲精品无码 | 成人午夜短视频 | 内射夜晚在线观看 | 国产一区亚洲 | 色欲人妻aaaaaaa无码 | 青青草小视频 | 北岛玲一区二区 | 国产无人区码一码二码三mba | 亚洲高清在线 | 九九综合网 | 精品国产91久久久久久 | 亚洲a成人 | 成人做爰高潮片免费视频韩国 | 久久一级黄色片 | 久久久xxx| 另类亚洲小说图片综合区 | 国产超碰自拍 | 国产成人手机高清在线观看网站 | 性欧美xxxx精品xxxxrb | 精品国产18久久久久久依依影院 | 九九九国产 | 精品国产综合区久久久久久 | 成人做爰视频www | 久久黄色精品视频 | 亚洲午夜无码久久yy6080 | 亚洲中文字幕久久无码精品 | 日吊视频 | 亚洲欧美一区二区三区不卡 | 无码av波多野结衣 | 成人网久久 | 国产精品v欧美精品∨日韩 女邻居的大乳中文字幕 | 亚洲三级国产 | 国产高清99 | 网站在线免费网站在线免费观看国产网页 | 无套内谢孕妇毛片免费看看 | 97国产精东麻豆人妻电影 | 日本三级欧美三级人妇视频黑白配 | 欧美国产激情视频 | 久久久中文字幕日本无吗 | 精品欧美一区二区三区精品久久 | 国产免费又爽又色又粗视频 | 草草视频在线观看 | 国产自产高清不卡 | 一本一道a∨波多野极衣 | 国产精品三级av | 久久日韩乱码一二三四区别 | 强插女教师av在线 | 成人免费av片 | 强制中出し~大桥未久在线a | 老熟妇仑乱视频一区二区 | 中文高清av| 人与动人物xxxx毛片 | 爱爱视频网址 | 精品久久久无码人妻字幂 | 丝袜足脚交91精品 | 快色污 | 国产伦精品一区二区三区免费 | 99精品偷拍视频一区二区三区 | 性做久久久久久 | 欧美成人免费一区二区三区视频 | 日本欧美色图 | 日本在线二区 | 国产嫖妓一区二区三区无码 | 亚洲天堂久久精品 | 中字幕视频在线永久在线观看免费 | 精品网站999| 亚洲iv一区二区三区 | 国产av久久久久精东av | 已婚少妇露脸日出白浆 | 国产婷婷色一区二区三区在线 | 国产乱人乱精一区二视频国产精品 | 日韩一级黄色大片 | 国产精品www在线观看 | 国内三级视频 | 福利资源在线观看 | 2021国产精品 | 黑人巨茎大战白人美女 | 日日爽视频 | 一级黄色大片免费看 | 拔插拔插海外华人免费视频 | 国产精品视频一区二区在线观看 | 国产在线精品一区二区 | 少妇婷婷 | 亚洲人成电影网站色mp4 | 主播大秀一区二区三区 | 国产精品高潮呻吟久久av无 | 国产伦久视频免费观看 视频 | 欧美少妇性生活 | 国产青青草视频 | 日韩国产欧美在线观看 | 国产一区 在线播放 | 91pony九色丨交换 | 日韩三级在线 | 国产精品高清网站 | 91风间由美一区二区三区四区 | 国产精品乱码人妻一区二区三区 | 伊人精品成人久久综合 | 国产日韩片 | 麻豆剧场 | 成人国产片女人爽到高潮 | 九九久久免费视频 | 久久久久免费精品国产小说色大师 | 国产麻豆91 | 中文字幕乱视频 | 热久久亚洲| 亚洲色欲一区二区三区在线观看 | 日本一区二区三区免费播放 | 性一交一乱一伦视频免费观看 | 久久精品视频久久 | 可以免费看毛片的网站 | 在线观看国产成人 | 日韩中文字幕在线一区二区三区 | 亚洲va中文在线播放免费 | 黄色国产精品视频 | 狠狠色综合色综合网络 | 一级α片免费看 | 国产精品乱码久久久久久 | 天堂av片| 深夜视频在线观看免费 | 久久久久久久艹 | 国自产拍偷拍精品啪啪一区二区 | 亚洲精品五月天 | 久久精品综合 | 涩涩网站免费 | 亚洲最大的成人网 | 日韩成人免费视频 | 一本色道久久加勒比精品 | 欧美精品99久久久 | 国产成人免费ā片在线观看老同学 | 久久综合久色欧美综合狠狠 | 国产边摸边吃奶边做爽视频 | 久久久久久欧美精品se一二三四 | 天天爽夜夜操 | 精品视频成人 | 欧美黑人一级 | 91九色网站 | 国产亚洲日韩欧美一区二区三区 | 国产一大二大不卡专区 | 国产成人无遮挡在线视频 | 国产伦精品一区二区三区精品视频 | 九九在线中文字幕无码 | 日韩视频一区二区三区在线播放免费观看 | 丰满少妇被猛烈进入 | 色噜噜狠狠一区二区三区果冻av | 性生活网址 | 亚洲蜜桃视频 | 美女网站av | 欧美色欧美亚洲另类七区 | 思思99精品视频在线观看 | 在线观看日韩中文字幕 | 18禁无遮挡免费视频网站 | 国产精品熟女人妻 | 亚洲va欧美va天堂v国产综合 | 农村偷人一级超爽毛片 | 日韩人妻一区二区三区蜜桃视频 | 一区二区激情日韩五月天 | 91草视频| 久久国产精品视频 | 欧美日韩亚洲国产精品 | 人妻丰满熟妇aⅴ无码 | 狠狠综合网 | 国产精品无码人妻一区二区在线 | 国产成人艳妇aa视频在线 | 3bmm在线观看视频免费 | 日本视频www | 一本一道av无码中文字幕麻豆 | 亚洲综合久久久久 | 香蕉97视频观看在线观看 | 无码中文av有码中文av | 羞羞视频日本 | 久久人网 | 亚洲精品久久久久久一区二区 | 亚洲女同一区二区 | 国产一区久久 | 国产精品美女久久久久aⅴ国产馆 | 青青草亚洲 | 亚洲精品字幕在线观看 | 日本做爰xxxⅹ高潮欧美 | 最近免费中文字幕大全免费版视频 | 日韩精品久久一区 | 国产成人无码av一区二区 | 欧美色aⅴ欧美综合色 | 国产乱人伦app精品久久 | 欧美国产日韩一区二区 | 日日夜夜中文字幕 | 日韩中文字幕网站 | 国产精品久久久天天影视 | 一色桃子656中文字幕 | 日韩黄色网络 | 青青偷拍视频 | 天堂无码人妻精品av一区 | 国产亚洲精品久久久久久 | 美女黄色真播 | 国产精品自拍亚洲 | 亚洲精品免费av | 成人动漫久久 | 欧美成人高清在线 | 6080毛片| 欧州一区 | 黄色片aaa| 国产97人人超碰caoprom | 久久人人爽人人爽爽久久 | av午夜久久蜜桃传媒软件 | 娇小萝被两个黑人用半米长 | 精品乱人码一区二区二区 | 日韩国产欧美在线视频 | 国内精品久久毛片一区二区 | 操极品少妇 | 日韩精品色呦呦 | 欧美一区二区三区四区五区 | 午夜女色国产在线观看 | 美女网站av | 88久久精品无码一区二区毛片 | 久久久久久网址 | 久久人人爽人人爽人人片av卡 | 黄色毛片视频校园交易 | 欧美三级不卡在线观看 | 老牛影视av老牛影视av | 国产精品不卡在线 | 久久精品青草社区 | 2019精品手机国产品在线 | 在线永久免费观看黄网站 | 日日操日日摸 | 五月婷婷深深爱 | 国产精品久久久久久免费播放 | 国产激情无码一区二区app | 日韩欧美人妻一区二区三区 | 色与欲影视天天看综合网 | 怡红院av亚洲一区二区三区h | 国产91在线看 | 成人午夜免费网站 | 一级大黄毛片 | 久久久久久人妻精品一区 | 亚洲精品久久久久久久蜜桃 | 2021国产精品一卡2卡三卡4卡 | 久久久99久久久国产自输拍 | 亚洲四区 | 国产在线视频导航 | 不良网站在线免费观看 | 色屁屁www影院入口免费 | 影音先锋在线播放 | 韩日一区二区三区 | 亚洲精品乱码久久久久久金桔影视 | av污在线观看 | 欧美日韩国产麻豆 | 日本乳喷榨乳奶水视频 | 亚洲九九| 久久不见久久见免费影院 | 日日操夜夜干 | 色噜噜狠狠狠狠色综合久 | 咪咪色影院 | 久久久久久久国产精品 | 99久久婷婷国产综合精品免费 | 久久99精品久久久久婷婷 | 日本xxxxl码在中国是几码 | 亚洲激情免费视频 | a在线观看免费 | 国产精品农村妇女白天高潮 | 国产伦理片在线观看 | 日韩av无码一区二区三区 | 国产精品自拍第一页 | www.五月激情 | 黄色正能量网站 | 亚洲三区在线观看无套内射 | 丰满肥臀噗嗤啊x99av | 国产电影一区二区三区 | 把插八插露脸对白内射 | 兔费看少妇性l交大片免费 97久久精品无码一区二区 | 国产精品涩涩涩视频网站 | 久久99国产精品久久99 | 91丝袜超薄交口足 | 国产精品天天狠天天看 | 日本三级黄色大片 | 艳妇臀荡乳欲伦交换在线看 | 日本三级韩国三级三级a级中文 | 亚洲欧美另类日本 | av在线中文 | 欧美日本一本 | 欧美激情视频免费 | 久久久久久一区国产精品 | 屁屁影院ccyy备用地址 | 亚洲v欧美v国产v在线观看 | 国产一区二三区好的精华液69 | 日韩精品区一区二区三vr | 中文有码一区 | 中文字幕av亚洲精品一部二部 | 99国产精品99久久久久久娜娜 | 国产综合久久久久 | 国产成人三级在线观看 | 一区二区三区麻豆 | 一色屋精品视频在线观看 | 在线看无码的免费网站 | 免费日本黄色片 | 日韩久久久精品 | 日本护士xxxxhd少妇 | 国产精品人妻一区夜夜爱 | jlzzjizz日本丰满少妇 | 中日黄色片 | 热の综合热の国产热の潮在线 | 欧美黑人狂野猛交老妇 | 在线观看日韩中文字幕 | 桃花色综合影院 | 麻豆91在线| 亚洲国产天堂久久综合 | 忘忧草精品久久久久久久高清 | 中文字日产幕乱码免费 | 国产啊v在线观看 | 欧美性生活视频 | 性按摩aaaaaa视频 | 久久天堂av综合色无码专区 | 国产又黄又猛的视频 | 日本欧美国产一区二区三区 | 麻豆精品免费 | 成人黄色激情 | 国产精品ssss在线亚洲 | 国产69精品一区二区亚洲孕妇 | 日日干夜夜操 | 色哟哟视频 | 亚洲91视频 | 亚洲精品无码久久久影院相关影片 | 不卡的日韩av | 久久99成人| 亚洲第一性理论片 | 男人的天堂亚洲 | 日韩精品一区二区三区中文在线 | 亚洲日韩国产二区无码 | 少妇做爰免费视频网站www | 日韩精品视频一区二区在线观看 | 亚洲最大色综合成人av | 亚洲精品国产suv一区88 | 国产一区二区三区在线电影 | 人人妻人人澡人人爽超污 | 人人草人人做人人爱 | 人人干人人噪人人摸 | 欧美丰满少妇xxxx性 | 九色视频在线免费观看 | 久热中文字幕在线精品观 | 免费asmr色诱娇喘呻吟外国 | 国产日产久久高清欧美 | 免费做爰在线观看视频妖精 | 日日夜夜狠狠操 | 欧美丰满熟妇xxxx性ppx人交 | 国产精品久久久久一区二区国产 | 五姑娘在线观看高清版 | 精品国产乱码久久久久久88av | 午夜精品福利视频 | 亚洲熟妇无码av在线播放 | 久久久久久久美女 | 国产v在线观看 | 色小说在线| 97精品超碰一区二区三区 | 天海翼一区二区三区四区演员表 | 国产日韩一区二区 | 日韩高清在线观看 | 少妇被躁爽到高潮无码久久 | 亚洲成色在线 | 古装大尺度激情呻吟视频 | 中文亚洲欧美日韩无线码 | 久久久久人| 特级淫片裸体免费看 | 亚洲精品久久久一线二线三线 | 狠狠操狠狠爱 | 国产四区 | 黄色一级大片免费看 | av在线进入| 国产精品伦一区二区 | 337p日本欧洲亚洲大胆精品 | 少妇高潮惨叫久久久久电影69 | 亚洲欧美v国产一区二区 | 国产中文字二暮区 | 久久久久黄色片 | 人人看人人做 | 8mav在线| 99re在线观看 | 少妇精品一区二区三区在线观看 | 国产69精品久久久久久妇女迅雷 | 777cc成人 | av毛片在线播放 | 又黄又爽又色的免费软件 | 在线观看岛国av | 婷婷成人丁香五月综合激情 | 亚洲自拍偷窥 | 亚洲国产精品区 | 激情涩涩 | 超污视频在线观看 | 九九99久久 | 欧美黄大片| 亚洲精品国产视频 | 日本www免费 | 少妇69xx| 欧美性插b在线视频网站 | 国产精品 欧美激情 | 欧美色图激情小说 | 天天舔夜夜操 | 高h破瓜受孕龙精 | 国产一级片免费在线观看 | 97福利影院 | 久久久久99精品成人片直播 | 日韩中文字幕一区二区三区 | 亚洲国产日韩在线视频 | 精品人伦一区二区三区蜜桃网站 | 国内偷拍久久 | 在线一级片 | 日韩亚射吧 | 国产黄色片在线观看 | 久久久久香蕉国产线看观看伊 | 欧美精品色视频 | 乱码精品一区二区三区 | 亚洲精品久久久久中文第一幕 | 欧美黄色网络 | 红桃17c视频永久免费入口 | 大肉大捧一进一出好爽动态图 | 亚洲第一在线 | 精品国产免费人成网站 | 欧美一区二区三区喷汁尤物 | 色老99久久九九爱精品 | 香蕉人人超人人超碰超国产 | 日本亚州视频在线八a | 伊人色图 | 亚洲美女中文字幕 | 波多野结衣一区二区三区av免费 | 免费毛片看 | 国产成人在线视频观看 | 亚洲在线免费观看视频 | a级片在线看 | 国产乱淫视频 | 亚洲精品偷拍视频 | 91国偷自产一区二区开放时间 | 99精品国自产在线 | av永久免费 | 免费黄色在线网站 | 美女脱了内裤张开腿让男人桶网站 | 亚洲精品无码国产 | 国产无遮挡成人免费视频 | 日韩人妻精品无码一区二区三区 | 日韩视频 中文字幕 视频一区 | 天天射天天操天天干 | 催眠调教艳妇成肉便小说 | 精品国产91久久久久久久妲己 | 丁香久久婷婷 | 久久久久久久久99 | 少妇饥渴偷公乱第32章 | 亚洲成av人乱码色午夜 | 欧美日韩亚洲中文字幕一区二区三区 | 樱花草在线社区www 国产又爽又黄又刺激的视频 | 波多野结衣一级 | 久久在线视频免费观看 | 国产一级做a爱片久久毛片a | 亚洲精品久久久久9999吃药 | 国产日韩av在线 | 性视频免费的视频大全2015年 | 好吊妞视频这里有精品 | 日韩性生活大片 | 日韩一区视频在线 | 色欲麻豆国产福利精品 | 精品一区二区三区在线播放 | 日日噜噜噜夜夜狠狠久久蜜桃 | 国产美女免费网站 | 同性恋一级片 | 亚洲福利视频网 | 呦呦在线视频 | 四川农村妇女野外毛片bd | 伊人久久久久久久久 | 欧美精品videos另类日本 | 美女毛片 | 国产精品美女视频 | 亚洲中文字幕无码中字 | 国产精品视频在线观看 | 国产精品伦一区二区三级视频 | 自拍偷在线精品自拍偷99九色 | 131mm少妇做爰视频 | 成人在线视频你懂的 | 老司机午夜精品视频资源 | 成人欧美一区二区三区黑人冫 | 亚洲制服一区 | 自拍偷自拍亚洲精品播放 | 色婷婷美国农夫综合激情亚洲 | gogogo日本免费观看电视动漫 | 在线一区二区三区 | 美女撒尿毛片视频免费看 | 国产一级内谢 | 亚洲www啪成人一区二区麻豆 | 国产一区二区在线视频 | 九九香蕉视频 | 国产成人黄色 | 中国产一级a毛片四川女 | 国产精品美女久久久久久久网站 | 亚洲免费高清视频 | 日本三级久久 | 日韩av无码国产精品 | 日韩在线观看一区二区 | 成人夜间视频 | 日韩精品无码人妻一区二区三区 | 国产av人人夜夜澡人人爽 | 中文日本在线 | 色吊丝av中文字幕 | 日本高清在线观看 | 成人做爰69片免费看网站色戒 | 又色又爽又黄的视频软件app | 福利视频网站 | 亚洲精品系列 | www.国产.com| 亚洲黄色中文字幕 | 午夜影院免费观看 | 80日本xxxxxxxxx96 81国产精品久久久久久久久久 | 男女毛片视频 | 欧美丝袜一区二区 | 中日韩精品视频在线观看 | 91在线一区二区 | 国产成人精品一区二区三区 | 亚洲爱婷婷色婷婷五月 | 国产一区二区三区不卡av | 日本视频色 | 素人av在线 | 国产精品毛片久久 | 女人裸体性做爰录像 | 久久亚洲国产精品成人av秋霞 | 欧美日韩国产一级 | 另类三区| 亚洲超丰满肉感bbw 亚洲超碰在线 | 久久久久久久女女女又又 | av黄色国产| 伊人久久一区二区 | 少妇真实被内射视频三四区 | 69精品视频| 天天久久综合 | 日韩中文字幕亚洲精品欧美 | 久久久久久久久艹 | 久久精品国产亚 | 欧美搡bbbbb搡bbbbb | 亚洲免费区 | 日韩黄站| 熟妇人妻中文av无码 |