[hellogcc] Re: [hellogcc] 关于LLVM的演讲稿

  • From: Triple Yang <triple.yang@xxxxxxxxx>
  • To: ??任 (Wei-Ren Chen) <chenwj@xxxxxxxxxxxxxxxxx>
  • Date: Wed, 7 Nov 2012 19:36:18 +0800

大家好,

我按照大伙的意见进行了改动,主要是3各方面:
1. 根据刘咏勤的建议加入了对toolchain进行解释的内容
2. 根据Yao Qi的建议将繁琐的细节部分作为附录内容,正题部分减少为21页,应该不会超时
3. 根据???f任的修改建议增订了许多内容

在此一并致谢!


在 2012年11月6日 下午3:19,Triple Yang <triple.yang@xxxxxxxxx>写道:

> 太感谢你了,我会一一改正。
>
> 在 2012年11月6日 下午12:22,???f任 (Wei-Ren Chen) <chenwj@xxxxxxxxxxxxxxxxx>写道:
>
> Hi,
>>
>>   See below,
>>
>> ---
>> p6 基本编译流程 (2)
>>
>>   -march=XX 中的 XX 建议标上色,之后的范例是以 XX 当作例子。
>> 这里上色可以强调一下。
>>
>> p7 LLVM 的后端部分
>>
>>   (1) - (4) 有相关文字叙述吗?
>>
>> p8 后端代码生成流程
>>
>>   每个方框标上颜色有什么用意?
>>
>> p9 划分代码生成流程
>>
>>   "Machine Code Layer" 漏了上色?  我觉得 p8 - p9 如果能弄成一页
>> 那是最好不过了,比较 focus。又或者,你可以在这一页加个简图:
>>
>>   LLVM IR -> MachineInstr -> MCInst
>>
>> "Machine Code Layer" 改成 "Machine Code Layer (又称 MCInstr)"
>> 我觉得跟后面比较一致。
>>
>> p11 描述后端第一部分(2)
>>
>>   platform built-in? 你觉得 "各平台共用" 如何? 我想你说的 platform
>> built-in 是指 LLVM 自带的代码?
>>
>> p14 DAG 示例
>>
>>   这里如果能以依序对每一个节点稍做描述会比较理想。
>>
>> p15 操作 SelectionDAG 的接口
>>
>>   p15 可以挑一个 getNode 搭配 p16 解释参数用意,我觉得就底下这一个吧
>>
>> SDValue getNode(unsigned Opcode, DebugLoc DL, EVT VT, SDValue N1,
>>   SDValue N2);
>>
>>   我自己是觉得特别是 VT 这个参数可能需要解释一下。
>> 什么是 EVT 和 p16 上的 MVT?
>>
>> p16 改写DAG:拆分乘累加指令
>>
>>   ?祟}改成
>>
>>   改写 (Lowering) DAG:
>>      拆分乘累加指令
>>
>>   这里可能要提一下目标可能不支援 MAD,故有这一步。
>>
>> p17 基本数据结构 (3):MachiInstr
>>
>>   能先提一下 tblgen 在 LLVM 的角色吗? tblgen 的例子最好能
>> 简单解释一下。??例是?⑹颤N map 到什?N?
>>
>> p18 MachineInstr的从属关系
>>
>>   这一页想表达的是什么?
>>
>> p24 后端代码组织模式
>>
>>   能否用图来描述 TargetMachine,MC 和 AsmPrinter 之间的关系?
>>
>> p34 用TableGen定义指令
>>
>>   "描述指令匹配的语义模式" 这句话有点拗口。?@?又v如何:
>>
>>   "描述如何从 DAG 对应到 asm"。这里我自己不太有把握这样讲恰不恰当。
>> 另外,无码系列,列的小项如果可以跟后面标题一致,我觉得比较好。例如
>> 将 "描述指令的构成" 改成跟 p35 标题一致,"定义指令"。
>>
>> p36 理解指令定义中的语义模式
>>
>>   标题有点拗口。
>>
>>   "输出操作数的传递: set" 可以加上伪码:
>>
>>   $d = add $s1, $s2
>>
>> p40 输出二进制目标文件 (2)
>>
>>   把新增代码 "field ..." 标记起来,强调一下。
>>
>> p43 小贴士:类命名习惯
>>
>>   "比如上表中的XXMCCodeEmitter",我?]看到 "上表"。
>>
>> p48 工具链平台的其它内容
>>
>>   ???Y器可以?臀壹由? MCLinker 的 url ???
>>   http://code.google.com/p/mclinker/
>>
>
> 可以的,我顺便学习下。
>
> 祝好!
>
>
>> ---
>>
>> 韦任
>>
>> --
>> Wei-Ren Chen (???f任)
>> Computer Systems Lab, Institute of Information Science,
>> Academia Sinica, Taiwan (R.O.C.)
>> Tel:886-2-2788-3799 #1667
>> Homepage: http://people.cs.nctu.edu.tw/~chenwj
>>
>
>
>
> --
> 杨勇勇 (Yang Yongyong)
>



-- 
杨勇勇 (Yang Yongyong)

Other related posts: