- 博客(12)
- 资源 (22)
- 收藏
- 关注
原创 Studying note of GCC-3.4.6 source (45)
4.2.3.3. Information about register supporting auto-incr/decBack to init_regs, next calls init_reg_autoinc. This function for x86 machine will set forbidden_inc_dec_class for all registers, as x8
2010-05-25 09:28:00 799
原创 GCC-3.4.6源代码学习笔记(45)
4.2.3.3. 支持自动增/减寄存器的信息回到init_regs,其次调用init_reg_autoinc。对于x86机器这个函数将对所有的寄存器设置forbidden_inc_dec_class,因为x86没有任何自增取址(auto increment addressing)。在下面的init_reg_autoinc中,FORBIDDEN_INC_DEC_CLASSES被定义,如果定
2010-05-25 09:24:00 1256
原创 Studying note of GCC-3.4.6 source (44)
4.2.3.3. Determine cost of moving data between registersFollowing, init_reg_sets_1 evaluates the cost of moving data between registers of different class, then between register and memory. in
2010-05-18 09:55:00 667
原创 GCC-3.4.6源代码学习笔记(44)
4.2.3.3. 确定寄存器间移动数据的代价接下来,init_reg_sets_1评估不同类别寄存器间移动数据的代价,而后是评估寄存器和内存之间。 init_reg_sets_1 (continue) 477 /* Initialize the move cost table. Find every subset of each class478 and
2010-05-18 09:40:00 997
原创 Studying note of GCC-3.4.6 source (43)
4.2.1.3.2.2. Objects for real constantFollowing, init_emit_once goes to initialize real constants. init_emit_once (continue) 5546 REAL_VALUE_FROM_INT (dconst0, 0, 0, double_mode);
2010-05-17 09:42:00 948
原创 GCC-3.4.6源代码学习笔记(43)
4.2.1.3.2.2. 浮点常量对象接下来,init_emit_once初始化浮点常量。 init_emit_once (continue) 5546 REAL_VALUE_FROM_INT (dconst0, 0, 0, double_mode);5547 REAL_VALUE_FROM_INT (dconst1, 1, 0, double
2010-05-17 09:33:00 1348
原创 Studying note of GCC-3.4.6 source (42)
4.2.1.2. Initialize hash tablesSimliar with the front-end, the back-end also uses hashtable to cache commonly used and shared objects. In later sections, with the compilation, we see the meaning
2010-05-12 10:27:00 1401
原创 GCC-3.4.6源代码学习笔记(42)
4.2.1.2. 初始化哈希表与前端相似,后端亦对常用、共享的对象使用哈希表。在以后的章节,结合编译过程,我们再来看这些哈希表中,元素的意义。接着在init_emit_once,5474到5494行,找出适合字节类型,字类型及double类型的模式,而ptr_mode在5494行由mode_for_size来确定。4.2.1.3. 创建Rtl对象4.2.1.3.1.
2010-05-12 09:38:00 2138
原创 Studying note of GCC-3.4.6 source (41)
4.2. Initialize the back-endAfter handling command options, do_compile will do initialization for back-end. do_compile (continue) 4638 /* Dont do any more if an error has already occurred
2010-05-05 09:33:00 928
原创 GCC-3.4.6源代码学习笔记(41)
4.2. 初始化后端处理完命令行选项后,do_compile将初始化后端。 do_compile (continue) 4638 /* Dont do any more if an error has already occurred. */4639 if (!errorcount)4640 {4641 /* This must be run
2010-05-05 09:20:00 1069
原创 Studying note of GCC-3.4.6 source (40)
4.1.5. Settle down parametersAfter adjusting parameters for options for the target, other parameters can be determined finally now. For each -falign-* flags, there is an *_log variant which is the p
2010-05-04 09:29:00 908
原创 GCC-3.4.6源代码学习笔记(40)
4.1.5. 最后确定参数在调整完用于目标平台的选项参数后,现在可以最后确定其他参数。对于每个-falign-*标识符,都有对应的*_log变量,其值为不小于这个变量值的最小2的指数倍数,用于.align输出。在下面4360行的INSN_SCHEDULING,及在4364行的DELAY_SLOTS由后端的工具getattrtab根据目标芯片定义。另外,下面的*_DEBUGGING_INFO指明
2010-05-04 09:26:00 1345
Introduction to Theory of Computation
2018-09-23
Survey on Instruction Selection
2018-09-23
Towards a Compilation infrastructure for network processors
2018-09-23
the art of multiprocessor programming
2018-09-23
Crafting a Compiler
2018-09-01
How Debuggers Work
2018-09-01
Elements of Compiler Design
2018-09-01
category-theory-for-programmers
2018-09-01
Language_Implementation_Patterns_C
2018-09-01
Compiler Construction-20th
2018-09-01
Compiler Construction-19th
2018-09-01
Compiler Construction-17th
2018-09-01
Compiler Construction-16th
2018-09-01
Compiler Construction-5th
2018-09-01
Construction and Evolution of Code Generator
2018-09-01
Modern Embedded Computing Designing Connected, Pervasive, Media-Rich Systems
2018-09-01
Compiler Construction-11th
2018-09-01
The compiler design handbook
2018-09-01
Data_Flow_Analysis_Theory_And_Practice(Bookos.org)
2018-09-01
The Compiler Design Handbook Optimizations and machine code generation
2018-09-01
instruction scheduling for instruction level parallel processor
2018-07-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人