A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2003; you can also visit the original URL.
The file type is application/pdf
.
Filters
Methods for saving and restoring register values across function calls
1991
Software, Practice & Experience
The method used to save and restore the values of registers across function calls can affect performance and influence the design of specific instructions. ...
The calling function is responsible for preserving register values in one of the sets whereas the called function is responsible for the other set. ...
There are many factors to consider when choosing a method to save and restore the values in registers across function calls. ...
doi:10.1002/spe.4380210204
fatcat:bgttxm4rifevbb47u3yvrkn2zq
Functionally verifying state saving and restoration in dynamically reconfigurable systems
2012
Proceedings of the ACM/SIGDA international symposium on Field Programmable Gate Arrays - FPGA '12
Systems that employ checkpointing, periodic or phased execution, preemptive multitasking and resource defragmentation, may also need to be able to save and restore the state of a module that is being reconfigured ...
To the best of our knowledge, this work is the first to allow cycle-accurate simulation of a system partially reconfiguring both its logic and state and a case study shows that our method is effective ...
Register Transfer Level (RTL) simulation is the most common method for verifying hardware design functionality. ...
doi:10.1145/2145694.2145735
dblp:conf/fpga/GongD12
fatcat:zybmya2ix5grxgzql6y7nrpgvq
Fast context switches: compiler and architectural support for preemptive scheduling
1995
Microprocessors and microsystems
The method introduced in this paper attempts to avoid saving and restoring registers by performing context switches at points in the program where only a small subset of the registers are live. ...
A new technique, known as register remapping, is introduced which increases the number of these fast context switch points without degrading the e ciency of the code. ...
A scratch register is a register whose value cannot be guaranteed to be retained across a function call. A non-scratch register is one whose value is retained across a function call. ...
doi:10.1016/0141-9331(95)93086-x
fatcat:deylvnu62bhzpdvhzkzgwxrz3a
Compiler support for lightweight context switching
2013
ACM Transactions on Architecture and Code Optimization (TACO)
As part of adding the primitives to LLVM, we have also added compiler support for passing parameters across context switches. ...
The primitive, called SWAPSTACK, can be used by any language implementation based on LLVM to build higher-level language structures such as continuations, co-routines, and lightweight threads. ...
If it is necessary to preserve a value across a call to a function marked nocalleesave, the register allocator instead resorts to other methods (moving the use across the call if possible, rematerialising ...
doi:10.1145/2400682.2400695
fatcat:7uhz6fnjffc6hlpa5flwisga4q
Register allocation across procedure and module boundaries
1990
SIGPLAN notices
This paper describes a method for compiling programs using interprocedural register allocation. ...
A strategy for handling programs built from multiple modules is presented, as well as algorithms for global variable promotion and register spill code motion. ...
Hewlett-Packard Company has filed a patent application on some of the methods discussed in this paper. ...
doi:10.1145/93548.93551
fatcat:6pfi3g2lcvg4rngt6rtxph2vg4
When good instructions go bad
2008
Proceedings of the 15th ACM conference on Computer and communications security - CCS '08
Finally, we argue that the threat posed by return-oriented programming, across all architectures and systems, has negative implications for an entire class of security mechanisms: those that seek to prevent ...
We construct a Turing-complete library of code gadgets using snippets of the Solaris libc, a general purpose programming language, and a compiler for constructing return-oriented exploits. ...
on short notice and for a long period of time and the anonymous reviewers for their insightful feedback. ...
doi:10.1145/1455770.1455776
dblp:conf/ccs/BuchananRSS08
fatcat:l4lwa63lcrcrzpfjiq44imxvry
The dream of a lifetime
1980
Proceedings of the 1980 ACM conference on LISP and functional programming - LFP '80
We define a "rack", a data abstraction hybrid of a register and a stack. ...
It is used for encapsulating the behavior of the kind of register whose contents may have an extent which requires that it be saved during the execution of an unknown piece of code. ...
We wish to thank Robin Stanton, Richard Stalhnan, Jonaihan Rees, and Richard Zippel for being the first readers of this paper and for making important suggestions, and Phil Agre for finding a bug. ...
doi:10.1145/800087.802802
fatcat:33rcrqjqejd3lin7ovcvbfl7x4
RegGuard: Leveraging CPU Registers for Mitigation of Control- and Data-Oriented Attacks
[article]
2021
arXiv
pre-print
Our scheme can deal effectively with saved registers to the stack, i.e., when the compiler needs to free up registers to make room for the variables of a new function call. ...
RegGuard is still benefiting from the performance gain normally associated with register allocations, and the overhead is within a few percent of other unsecured register allocation schemes for most cases ...
across function calls thanks to values saved to the stack. ...
arXiv:2110.10769v1
fatcat:pguwufaa7jb5xoz43nuyq2tsfe
Minimizing register usage penalty at procedure calls
1988
Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation - PLDI '88
Inter-procedural register allocation can minimize the register usage penalty at procedure calls by reducing the saving and restoring of registers at procedure boundaries. ...
Using two different usage conventions for the registers, the scheme can distribute register saves/restores throughout the call graph even in the presence of recursion, indirect calls or separate compilation ...
Acknowledgement The author has benefited greatly from ideas from John Hennessy, Earl Killian and Larry Weber. ...
doi:10.1145/53990.53999
dblp:conf/pldi/Chow88
fatcat:jvuheaplo5hlho5g3qg6cbb5qi
Minimizing register usage penalty at procedure calls
1988
SIGPLAN notices
Inter-procedural register allocation can minimize the register usage penalty at procedure calls by reducing the saving and restoring of registers at procedure boundaries. ...
Using two different usage conventions for the registers, the scheme can distribute register saves/restores throughout the call graph even in the presence of recursion, indirect calls or separate compilation ...
Acknowledgement The author has benefited greatly from ideas from John Hennessy, Earl Killian and Larry Weber. ...
doi:10.1145/960116.53999
fatcat:7c23qxvtkfajjjig7b3xe5w4aq
Checkpoint and Restore for SystemC Models
[chapter]
2010
Lecture Notes in Electrical Engineering
Save and Restore (or checkpointing) is a useful technique that can greatly assist target software and simulation model development and debug. ...
We present preliminary work in the field of saving and restoring model state within a SystemC simulation environment. ...
We are able to save and restore the state of SystemC methods, and the events which trigger them. We are also able to save and restore the states of models that are running on the SystemC simulator. ...
doi:10.1007/978-90-481-9304-2_3
fatcat:ewzwn24l25ep5lojjsrhvivhre
Inter-procedural stacked register allocation for itanium® like architecture
2003
Proceedings of the 17th annual international conference on Supercomputing - ICS '03
When the total number of registers used by the procedures on the call stack exceeds the number of physical registers, RSE performs automatically register overflows and fills to ensure that the current ...
The results show that our approach can improve performance significantly for the programs with high RSE overflow cost, e.g. perlbmk and crafty, improved by 14% and 3.7%, respectively. ...
We would also thank Fred Chow for his helpful discussions and insights, Robert Cox and the anonymous referees for their useful comments. ...
doi:10.1145/782814.782844
dblp:conf/ics/YangCGJLZ03
fatcat:vvf727gf5fh7ljfbsrmqqpucbq
Approaches to Transient Computing for Energy Harvesting Systems
2015
Proceedings of the 3rd International Workshop on Energy Harvesting & Energy Neutral Sensing Systems - ENSsys '15
However, such energy storage devices require time for charging and increase the size, mass and cost of the system. ...
Finally, recommendations are provided to system designers for selecting the most suitable approach. ...
If the flag is set means that a snapshot is saved. Therefore, Hibernus restores the RAM's contents and the registers' values. ...
doi:10.1145/2820645.2820652
dblp:conf/sensys/ArreolaBDWBAM15
fatcat:x7tjsgt4onczhczpuic4vrpz7e
Register connection
1993
SIGARCH Computer Architecture News
Code optimization and scheduling for superscalar and superpipelined p r o c essors often increase the register requirement of programs. ...
In this paper, we introduce a new architectural method for adding a set of extended r e gisters into an architecture. ...
Acknowledgements The authors would to thank John Gyllenhaal and Grant Haab, along with all members of the IMPACT research group for their comments and suggestions. ...
doi:10.1145/173682.165160
fatcat:tsmyasx755f7zpg2zdhxu5xnpe
Register connection
1993
Proceedings of the 20th annual international symposium on Computer architecture - ISCA '93
Code optimization and scheduling for superscalar and superpipelined p r o c essors often increase the register requirement of programs. ...
In this paper, we introduce a new architectural method for adding a set of extended r e gisters into an architecture. ...
Acknowledgements The authors would to thank John Gyllenhaal and Grant Haab, along with all members of the IMPACT research group for their comments and suggestions. ...
doi:10.1145/165123.165160
dblp:conf/isca/KiyoharaMCBHAH93
fatcat:ugjlvl4rlbbnvp3i53bsvcwzre
« Previous
Showing results 1 — 15 out of 47,744 results