自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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

This is a free textbook for an undergraduate course on the Theory of Computation, which we have been teaching at Carleton University since 2002.Until the 2011/2012 academic year, this course was offered as a second-year course (COMP 2805) and was compulsory for all Computer Science students. Starting with the 2012/2013 academic year, the course has been downgraded to a third-year optional course (COMP 3803).

2018-09-23

Survey on Instruction Selection

Instruction selection is one of three optimization problems involved in the code generator back-end of a compiler. The instruction selector is responsible of transforming an input program from its target-independent representation into a target-specific form by making best use of the available machine instructions. Hence instruction selection is a crucial part of efficient code generation.

2018-09-23

Towards a Compilation infrastructure for network processors

Modern network processors (NPs) typically resemble a highly-multithreaded multiprocessor-ona-chip, supporting a wide variety of mechanisms for on-chip storage and inter-task communication. NP applications are themselves composed of many threads that share memory and other resources,and synchronize and communicate frequently. In contrast, studies of new NP architectures and features are often performed by benchmarking a simulation model of the new NP using independent kernel programs that neither communicate nor share memory. In this paper we present a NP simulation infrastructure that (i) uses realistic NP applications that are multithreaded, share memory, synchronize, and communicate; and (ii) automatically maps these applications to a variety of NP architectures and features. We use our infrastructure to evaluate threading and scaling, on-chip storage and communication, and to suggest future techniques for automated compilation for NPs.

2018-09-23

the art of multiprocessor programming

The first third covers the principles of concurrent programming, showing how to think like a concurrent programmer. Like many other skills such as driving a car, cooking a meal, or appreciating caviar, thinking concurrently requires cultivation, but it can be learned with moderate effort. Readers who want to start programming right away may skip most of this section, but should still read Chapters 2

2018-09-23

Crafting a Compiler

Brief Contents 1 Introduction 1 2 A Simple Compiler 31 3 Scanning—Theory and Practice 57 4 Grammars and Parsing 113 5 Top-Down Parsing 143 6 Bottom-Up Parsing 179 7 Syntax-Directed Translation 235 8 Symbol Tables and Declaration Processing 279 9 Semantic Analysis 343 10 Intermediate Representations 391 11 Code Generation for a Virtual Machine 417 12 Runtime Support 445 13 Target Code Generation 489 14 Program Optimization 547

2018-09-01

How Debuggers Work

a total guide to debuggers: what they do, how they work, and how to use them to produce better programs

2018-09-01

Elements of Compiler Design

This book is intended as a text for a one-term introductory course in compiler writing at a senior undergraduate level. It maintains a balance between a theoretical and practical approach to this subject. From a theoretical viewpoint, it introduces rudimental models underlying compilation and its essential phases.

2018-09-01

category-theory-for-programmers

category theory is a treasure trove of extremely useful programming ideas. Haskell programmers have been tapping this resource for a long time, and the ideas are slowly percolating into other languages, but this process is too slow. We need to speed it up. Second, there are many different kinds of math, and they appeal to different audiences. You might be allergic to calculus or algebra, but it doesn't mean you won't enjoy category theory. I would go as far as to argue that category theory is the kind of math that is particularly well suited for the minds of programmers. That’s because category theory — rather than dealing with particulars — deals with structure. It deals with the kind of structure that makes programs composable.

2018-09-01

Language_Implementation_Patterns_C

This book gives you just the tools you'll need to develop day-to-day language applications. You'll be able to handle all but the really advanced or esoteric situations. For example, we won't have space to cover topics such as machine code generation, register allocation, automatic garbage collection, thread models, and extremely efficient interpreters. You'll get good all-around expertise implementing modest languages, and you'll get respectable expertise in processing or translating complex languages

2018-09-01

Compiler Construction-20th

the essays collection of conference of Compiler Construction-20th

2018-09-01

Compiler Construction-19th

the essays collection of conference of Compiler Construction-19th

2018-09-01

Compiler Construction-17th

the essays collection of conference of Compiler Construction-17th

2018-09-01

Compiler Construction-16th

the essays collection of conference of Compiler Construction-16th

2018-09-01

Compiler Construction-5th

the essays collection of conference of Compiler Construction-5th

2018-09-01

Construction and Evolution of Code Generator

It describes the Construction and Evolution of Code Generator

2018-09-01

Modern Embedded Computing Designing Connected, Pervasive, Media-Rich Systems

Modern Embedded Computing Designing Connected, Pervasive, Media-Rich Systems

2018-09-01

Compiler Construction-11th

the essays collection of conference Compiler Construction-11th

2018-09-01

The compiler design handbook

The compiler design handbook, which describes the design practice of compiler

2018-09-01

Data_Flow_Analysis_Theory_And_Practice(Bookos.org)

Data Flow Analysis Theory And Practice for compiler development

2018-09-01

The Compiler Design Handbook Optimizations and machine code generation

The Compiler Design Handbook Optimizations and machine code generation

2018-09-01

C++_Coding_Standards_101_Rule

C++ Coding Standards 101 Rule, Andrei Alexandrescu

2018-08-24

instruction scheduling for instruction level parallel processor

instruction scheduling for instruction level parallel processor

2018-07-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除