Filters








47,744 Hits in 5.9 sec

Methods for saving and restoring register values across function calls

Jack W. Davidson, David B. Whalley
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

Lingkan Gong, Oliver Diessel
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

Jeffrey S. Snyder, David B. Whalley, Theodore P. Baker
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

Stephen Dolan, Servesh Muralidharan, David Gregg
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

Vatsa Santhanam, Daryl Odnert
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

Erik Buchanan, Ryan Roemer, Hovav Shacham, Stefan Savage
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

Guy Lewis Steele, Gerald Jay Sussman
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]

Munir Geden, Kasper Rasmussen
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

F. C. Chow
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

F. C. Chow
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]

Màrius Monton, Jakob Engblom, Christian Schröder, Jordi Carrabina, Mark Burton
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

Liu Yang, Sun Chan, G. R. Gao, Roy Ju, Guei-Yuan Lueh, Zhaoqing Zhang
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

Alberto Rodriguez Arreola, Domenico Balsamo, Anup K. Das, Alex S. Weddell, Davide Brunelli, Bashir M. Al-Hashimi, Geoff V. Merrett
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

Tokuzo Kiyohara, Scott Mahlke, William Chen, Roger Bringmann, Richard Hank, Sadun Anik, Wen-Mei Hwu
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

Tokuzo Kiyohara, Scott Mahlke, William Chen, Roger Bringmann, Richard Hank, Sadun Anik, Wen-Mei Hwu
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