{"id":{"repo_id":"uiuc","oai_identifier":"oai:www.ideals.illinois.edu:2142/21777"},"canonical_url":"https://search.dev.ndltd.org/etd/uiuc/oai:www.ideals.illinois.edu:2142/21777","repository":{"repo_id":"uiuc","name":"University of Illinois - Urbana-Champaign","base_url":"https://www.ideals.illinois.edu/oai-pmh"},"display":{"title":"Compiler-assisted debugging and multiple instruction retry","abstract":"Backward execution requires the saving of historic information concurrently with the normal execution in order for a program to roll back. There are several applications for which backward execution is useful. In an environment where reliability is a concern, it may be necessary to roll back the program to a previously executed state in case of system faults. Multiple instruction retry is an alternative to checkpointing for recovery from a transient processor failure, especially when the error detection latency is only a few cycles. Speculative execution can achieve significant speedup for superscalar architectures by utilizing instruction retry to roll back the computation above mispredicted branches. Debugging is another field that can benefit from backward execution. Allowing the user to undo several instructions at specific positions may facilitate program debugging.","abstract_html":"Backward execution requires the saving of historic information concurrently with the normal execution in order for a program to roll back. There are several applications for which backward execution is useful. In an environment where reliability is a concern, it may be necessary to roll back the program to a previously executed state in case of system faults. Multiple instruction retry is an alternative to checkpointing for recovery from a transient processor failure, especially when the error detection latency is only a few cycles. Speculative execution can achieve significant speedup for superscalar architectures by utilizing instruction retry to roll back the computation above mispredicted branches. Debugging is another field that can benefit from backward execution. Allowing the user to undo several instructions at specific positions may facilitate program debugging.","abstract_has_math":false,"creators":["Chen, Shyh-Kwei"],"institution":"University of Illinois at Urbana-Champaign","degree_name":"Ph.D.","degree_level":"Dissertation","degree_discipline":"Computer Science","degree_department":null,"school":null,"contributors":["Fuchs, W. Kent"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2011,"date_issued":"2011-05-07T13:18:50Z","date_published":"2011-05-07T13:18:50Z","updated_at":"2026-07-22T22:25:18Z","subjects":["Computer Science"],"languages":["eng"],"rights":["Copyright 1994 Chen, Shyh-Kwei"],"rights_urls":[],"identifier_entries":[{"key":"dc:identifier","label":"Identifier","values":["AAI9512329","(UMI)AAI9512329"],"render_values":[{"text":"AAI9512329","href":null,"code":true},{"text":"(UMI)AAI9512329","href":null,"code":true}]}]},"links":{"outbound_url":"http://hdl.handle.net/2142/21777","outbound_label":"Handle","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Fuchs, W. Kent"]},{"key":"dc:creator","label":"Author","values":["Chen, Shyh-Kwei"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date","label":"Dc Date","values":["2011-05-07T13:18:50Z","10000-01-01","1994"]},{"key":"dc:type","label":"Dc Type","values":["text"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer Science"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Dissertation"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Ph.D."]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["University of Illinois at Urbana-Champaign"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Computer Science"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language","label":"Dc Language","values":["eng"]},{"key":"dc:rights","label":"Dc Rights","values":["Copyright 1994 Chen, Shyh-Kwei"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["AAI9512329","(UMI)AAI9512329","http://hdl.handle.net/2142/21777"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["Backward execution requires the saving of historic information concurrently with the normal execution in order for a program to roll back. There are several applications for which backward execution is useful. In an environment where reliability is a concern, it may be necessary to roll back the program to a previously executed state in case of system faults. Multiple instruction retry is an alternative to checkpointing for recovery from a transient processor failure, especially when the error detection latency is only a few cycles. Speculative execution can achieve significant speedup for superscalar architectures by utilizing instruction retry to roll back the computation above mispredicted branches. Debugging is another field that can benefit from backward execution. Allowing the user to undo several instructions at specific positions may facilitate program debugging.","This thesis describes schemes that have been implemented for multiple instruction retry for both RISC-type scalar processors, and very long instruction word (VLIW) architectures. The thesis also presents approaches that incorporate backward execution into a debugger, at both the compiler and the debugger levels.","Made available in DSpace on 2011-05-07T13:18:50Z (GMT). No. of bitstreams: 2 license.txt: 4922 bytes, checksum: 910b249b4beec47e7ab768910c8f966f (MD5) 9512329.pdf: 3548428 bytes, checksum: 585bd2c01d04d341c4790afd94dbb349 (MD5) Previous issue date: 1994","Item marked as restricted to the 'UIUC Users [automated]' Group (id=2) by Howard Ding (hding2@illinois.edu) on 2011-05-07T14:53:08Z Item is restricted indefinitely.","Restriction data tranferred 2014-07-01T11:24:32-05:00 Original Data Group with Access UIUC Users [automated] Release Date: none Reason: ETDs are only available to UIUC Users without author permission","ETDs are only available to UIUC Users without author permission","U of I Only"]},{"key":"dc:title","label":"Title","values":["Compiler-assisted debugging and multiple instruction retry"]}]}],"canonical_facts":{"dc:contributor":["Fuchs, W. Kent"],"dc:creator":["Chen, Shyh-Kwei"],"dc:date":["2011-05-07T13:18:50Z","10000-01-01","1994"],"dc:description":["Backward execution requires the saving of historic information concurrently with the normal execution in order for a program to roll back. There are several applications for which backward execution is useful. In an environment where reliability is a concern, it may be necessary to roll back the program to a previously executed state in case of system faults. Multiple instruction retry is an alternative to checkpointing for recovery from a transient processor failure, especially when the error detection latency is only a few cycles. Speculative execution can achieve significant speedup for superscalar architectures by utilizing instruction retry to roll back the computation above mispredicted branches. Debugging is another field that can benefit from backward execution. Allowing the user to undo several instructions at specific positions may facilitate program debugging.","This thesis describes schemes that have been implemented for multiple instruction retry for both RISC-type scalar processors, and very long instruction word (VLIW) architectures. The thesis also presents approaches that incorporate backward execution into a debugger, at both the compiler and the debugger levels.","Made available in DSpace on 2011-05-07T13:18:50Z (GMT). No. of bitstreams: 2 license.txt: 4922 bytes, checksum: 910b249b4beec47e7ab768910c8f966f (MD5) 9512329.pdf: 3548428 bytes, checksum: 585bd2c01d04d341c4790afd94dbb349 (MD5) Previous issue date: 1994","Item marked as restricted to the 'UIUC Users [automated]' Group (id=2) by Howard Ding (hding2@illinois.edu) on 2011-05-07T14:53:08Z Item is restricted indefinitely.","Restriction data tranferred 2014-07-01T11:24:32-05:00 Original Data Group with Access UIUC Users [automated] Release Date: none Reason: ETDs are only available to UIUC Users without author permission","ETDs are only available to UIUC Users without author permission","U of I Only"],"dc:identifier":["AAI9512329","(UMI)AAI9512329","http://hdl.handle.net/2142/21777"],"dc:language":["eng"],"dc:rights":["Copyright 1994 Chen, Shyh-Kwei"],"dc:subject":["Computer Science"],"dc:title":["Compiler-assisted debugging and multiple instruction retry"],"dc:type":["text"],"thesis:degree_discipline":["Computer Science"],"thesis:degree_level":["Dissertation"],"thesis:degree_name":["Ph.D."],"thesis:institution_name":["University of Illinois at Urbana-Champaign"]},"updated_at":"2026-07-22T22:25:18Z"}