• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-161  評論-223  文章-30  trackbacks-0
            周知cpu為方便亂序執(zhí)行,內(nèi)部會使用重命名寄存器技術(shù)消除數(shù)據(jù)依賴(war和waw)。編譯器在如下場景也會用到重命名

            ​1. 靜態(tài)單賦值。過程內(nèi)的每個變量唯一定義一次,原有相同的則會重命名,包括phi結(jié)點的定值
            ​2. bb表調(diào)度。為消除反相關(guān)依賴即war,可以重命名讀操作使用或?qū)懖僮鞫x的值,這樣能調(diào)度產(chǎn)生總時鐘周期更少的指令序列,但可能增加寄存器壓力導(dǎo)致溢出而新增了長延遲操作(內(nèi)存加載/存儲)并迫使另一輪調(diào)度
            ​3. ebb表調(diào)度。對于某一ebb的一條路徑p,p存在過早退出路徑pe,p和pe的公共前綴是基本塊b,當(dāng)調(diào)度p時,如果某個操作i向后移動到b,且i定義的值殺死了pe上的同名值,那么需要重命名i的定值。若i的定值被重命名,且其在p的出口處是活躍的,則調(diào)度器需要在出口處復(fù)制回原來的名字
            ​4. trace表調(diào)度。蹤跡不同于ebb路徑,它允許中間存在多個前驅(qū)即入口的基本塊,而后者不能。當(dāng)調(diào)度存在多入口的塊b的某蹤跡t時,t上的某操作i可能前向移動跨越b(t外的代碼路徑需作補償),若i殺死了一個活躍范圍跨越b的值,則需要重命名i的定值;同理,若i向后移動跨越b且殺死了t上的某值,則需重命名i的定值,這時t外的代碼路徑補償可以使用同一名字
            posted on 2023-09-06 23:35 春秋十二月 閱讀(75) 評論(0)  編輯 收藏 引用 所屬分類: Compiler
            久久综合国产乱子伦精品免费| 97香蕉久久夜色精品国产| 久久99热这里只有精品国产| 久久综合久久美利坚合众国| 国产精品99久久99久久久| www.久久热.com| 久久亚洲精品无码aⅴ大香| 色综合合久久天天综合绕视看| 国产巨作麻豆欧美亚洲综合久久 | 国内精品久久久久久久影视麻豆| 亚洲一本综合久久| 99久久国产亚洲综合精品| 久久99精品久久久久久hb无码| 久久99精品久久久久久野外 | 久久99精品国产99久久| 中文字幕精品久久久久人妻| 国产精品一区二区久久| 亚洲av成人无码久久精品| 久久国产视屏| 狠狠久久亚洲欧美专区| 久久久久亚洲av无码专区导航| 久久久精品国产Sm最大网站| 成人国内精品久久久久一区| 欧美黑人又粗又大久久久| 午夜精品久久久久久| 国产午夜电影久久| 久久精品九九亚洲精品天堂 | 中文精品99久久国产 | 奇米综合四色77777久久| 久久一本综合| 日本久久中文字幕| 亚洲国产天堂久久久久久| 国产精品一区二区久久精品无码 | 色综合久久综合中文综合网| 色老头网站久久网| 国产精品久久久久久五月尺| 亚洲国产成人久久综合一区77| 久久久精品久久久久久| 久久涩综合| 无码任你躁久久久久久老妇App| 久久久久九九精品影院|