深入理解LLVM-代碼生成 彭成寒 李靈 戴賢澤 9787111764151 【台灣高等教育出版社】

圖書均為代購,正常情形下,訂後約兩周可抵台。
物品所在地:中國大陸
原出版社:機械工業
NT$693
商品編號:
供貨狀況: 尚有庫存

此商品參與的優惠活動

加入最愛
商品介紹
*完成訂單後正常情形下約兩周可抵台
*本賣場提供之資訊僅供參考,以到貨標的為正確資訊。
印行年月:202409*若逾兩年請先於私訊洽詢存貨情況,謝謝。
台灣(台北市)在地出版社,每筆交易均開具統一發票,祝您中獎最高1000萬元。
書名:深入理解LLVM-代碼生成
ISBN:9787111764151
出版社:機械工業
著編譯者:彭成寒 李靈 戴賢澤
頁數:418
所在地:中國大陸 *此為代購商品
書號:1681063
可大量預訂,請先連絡。

內容簡介

本書由國內某大廠資深編譯器團隊撰寫,將多年研究與實踐積累傾囊傳授給讀者,是深入研究LLVM的不二之選。為了便於讀者理解,作者團隊不但親自手繪將近300幅圖,更是結合200段LLVM代碼進行實現分析,極力降低理解門檻。具體而言,本書系統介紹與體繫結構無關的編譯基礎知識、TableGen工具,深入剖析LLVM代碼生成的原理與每一步執行的細粒度實現,並指導讀者基於BPF為LLVM添加新後端。讀後會對整個LLVM的代碼生成體系和實現有深刻理解,可以解決多種業務問題。 全書共13章,分為兩部分。第一部分(第1∼6章)是基礎知識,介紹了LLVM項目、常見的IR(重點介紹SSA)、數據流分析、支配分析、循環等知識,此外還介紹了LLVM的後端描述語言TableGen。第二部分(第7∼13章)是代碼生成,涵蓋了LLVM代碼生成的每一個步驟,著重介紹了指令選擇、指令調度、SSA形式的編譯優化、寄存器分配、函數棧幀生成及非SSA形式的編譯優化、機器碼生成,最後以BPF後端為例介紹如何為LLVM添加一個新後端。另外,附錄部分主要總結了LLVM代碼生成過程中使用的IR、BPF指令集,如何在Linux中運行BPF應用,以及Pass和PassManager的管理等。

作者簡介

彭成寒,高級Java工程師,目前主要從事風控系統設計、演算法建模、大數據處理等工作。有超過10年的Java和C++開發經驗。

目錄

前言
第一部分 基礎知識
第1章 緒論
1 1 LLVM設計思路分析
1 2 LLVM主要子項目
1 3 LLVM構建與調試
1 4 LLVM在線工具
1 5 本章小結
第2章 IR基礎知識
2 1 IR分類
2 1 1 樹IR
2 1 2 線性IR
2 1 3 圖IR
2 2 CFG的基本塊與構建
2 2 1 基本塊
2 2 2 構建CFG
2 3 靜態單賦值
2 3 1 基本概念
2 3 2 SSA構造
2 3 3 SSA析構
2 3 4 SSA分類
2 3 5 基本塊參數和Phi節點
2 4 本章小結
第3章 數據流分析基礎知識
3 1 半格、格與不動點
3 1 1 半格和偏序集
3 1 2 格
3 1 3 不動點
3 2 數據流分析原理及描述
3 2 1 數據流方程形式化描述
3 2 2 數據流分析的理論描述
3 3 數據流方程示例
3 3 1 活躍變數
3 3 2 到達定值
3 3 3 常量傳播
3 4 擴展閱讀:數據流的遍歷性能分析
3 5 本章小結
第4章 支配分析
4 1 支配和逆支配
4 1 1 支配和逆支配相關定義

第二部分 代碼生成
附錄
詳細資料或其他書籍請至台灣高等教育出版社查詢,查後請於PChome商店街私訊告知ISBN或書號,我們即儘速上架。
規格說明
運送方式
已加入購物車
已更新購物車
網路異常,請重新整理