提出了适于谓词执行的寄存器分配算法。
A new register allocation algorithm for predicated code is proposed.
寄存器分配与指令调度是编译器优化过程中的两项重要任务。
Register allocation and instruction scheduling are two important tasks for every optimizing compiler.
您只需要为寄存器分配它自己的符号名并增加NUMREGS的值即可。
You would just assign the register its own symbolic name and increase the value of NUMREGS.
寄存器分配和代码生成是决定编译器能否生成高效代码的关键部分。
Register allocation and code generation are key parts of generating high performance assembly code.
除了全局寄存器分配以外,还实现了一个在基本块上的局部寄存器分配。
Besides global register allocation, local register allocation on basic block is also implemented. It cooperate with global register allocation in our methodology.
并在指令调度和寄存器分配阶段针对这种ASIP处理器的结构做了优化。
We also present optimization in instruction scheduling and register allocation phase for this ASIP architecture.
这篇论文尝试解决优化编译器的后端中的两个重要的问题:指令选择和寄存器分配。
This thesis attacks two important issues in back end of an optimizing compiler: instruction selection and register allocation.
利用寄存器分配原理,构造图着色模型和函数,通过修改图结点颜色实现二进制水印信息位的嵌入。
The watermarking binary is embedded by using the principle of register allocation, constructing the graph coloring model and function and changing the nodes colors in the interfere graph.
它首先通过虚拟寄存器分配算法获得虚拟寄存器,然后基于这些虚拟寄存器添加特定的控制流检测指令。
The control flow faults were detected by obtaining the virtual register and adding some control flow checking instructions into the program based on the virtual register.
有时,语义上等同但采用两种不同方式编写的代码可能会使优化器在执行良好的寄存器分配上所花费的时间相差巨大。
At times, semantically equivalent code, written in two different ways, might cause the optimizer to have a more difficult time performing good register allocation.
CLRJIT只能跟踪固定数目的寄存器分配变量;一旦需要跟踪的数目超出这个数目,它就开始将寄存器的内容移到内存中。
The CLR JIT can only track a fixed number of variables for register allocation; once it has to track more than this, it begins to spill the contents of registers into memory.
但同时,上述特点也使得MD 32 CC中可用来进行分配的寄存器数目较少,对寄存器分配算法带来很大的挑战。
But at the same time, these features decrease the amount of registers that can be used in register allocation, and so challenge the register allocation algorithm in MD32CC.
本文基于ARM 9tdmi内核,从指令调整、寄存器分配、条件分支和循环结构等方面对汇编代码的优化方法进行了详细的论述。
This article gives a detail discussion on the assembled code optimization from instruction arrangement, register division, condition selection branch and cycle structure based on the core of ARM9TDMI.
我们的示例显示了GCC如何分配寄存器,以及它如何更新输出变量的值。
Our example shows how GCC allocates registers, and how it updates the value of output variables.
这个寄存器包含一个说明为该分区分配的处理器的值。
This register contains a value that indicates the partition to which the processor is assigned.
有些编译器支持“生命周期分割”(live - range splitting),也就是说在程序的不同部分,变量可以被分配到不同的寄存器或者内存中。
Some compilers support live-range splitting, where a variable can be allocated to different registers as well as to memory in different parts of the function.
使用关键字register修饰最经常使用的变量:告诉编译器这个变量将会被经常用到,要求编译器使用非常高的优先级将此变量分配到寄存器中。
Using register for frequently-used variables: this tells the compiler that the register variable is going to be frequently used, so it should be allocated to a register with a very high priority.
当使用“r ”约束时,GCC在这里可以自由分配任何寄存器。
GCC is free here to allocate any register when the "r" constraint is used.
可以看到test1()中每次加法都需要读取和存储全局变量errs,而在test2()中,localerrs分配在寄存器上,只需要一条指令。
Note that test1 must load and store the global errs value each time it is incremented, whereas test2 stores localerrs in a register and needs only a single instruction.
更好的是,对于小型对象,J VM可以把分配工作完全优化掉,只把对象的字段放入寄存器。
Even better, for small objects, the JVM can optimize away the allocation entirely and simply hoist the object's fields into registers.
全局变量不会被分配在寄存器上,修改全局变量需要通过指针或者调用函数的方式间接进行。
Global variables are never allocated to registers. Global variables can be changed by assigning them indirectly using a pointer, or by a function call.
循环展开是一个可能导致JIT分配寄存器出现问题的转换的例子。
Loop unrolling is an example of a transformation that might cause the JIT to have problems register-allocating.
为了去除这些,我们也为这些变量分配寄存器。
To get rid of these we allocate registers for those variables too.
在读取了 %edx中x的值后,它为y也分配了相同的寄存器。
After reading the value of x in %edx, it allocated the same register for y.
介绍了PLC内部数据寄存器和辅助继电器的分配,给出了部分程序指令。
The distribution of the data registers and auxiliary relays in the PLC is introduced, then some part of instructions are given.
对ARM处理器的工作模式,寄存器的设置和分配进行了研究。
The operation model, the setting and distributing of register in ARM processor have been studied.
寄存器结构及其分配是软件流水算法的关键之一。
The structure and allocation of the register file is a key factor affecting the performance of software pipelining.
之后,驾驶员命令设备来完成其工作(通过操纵其寄存器)和直接在设备传送输出数据在存储器中分配的缓冲区。
Then the driver commands the device to do its job (by manipulating its registers) and the device transfers output data directly to the allocated buffer in the memory.
之后,驾驶员命令设备来完成其工作(通过操纵其寄存器)和直接在设备传送输出数据在存储器中分配的缓冲区。
Then the driver commands the device to do its job (by manipulating its registers) and the device transfers output data directly to the allocated buffer in the memory.
应用推荐