{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,12]],"date-time":"2026-06-12T10:08:02Z","timestamp":1781258882684,"version":"3.54.1"},"publisher-location":"New York, NY, USA","reference-count":32,"publisher":"ACM","license":[{"start":{"date-parts":[[2020,6,11]],"date-time":"2020-06-11T00:00:00Z","timestamp":1591833600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/L01503X\/1"],"award-info":[{"award-number":["EP\/L01503X\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2020,6,11]]},"DOI":"10.1145\/3385412.3386030","type":"proceedings-article","created":{"date-parts":[[2020,6,7]],"date-time":"2020-06-07T01:40:10Z","timestamp":1591494010000},"page":"854-868","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":27,"title":["Effective function merging in the SSA form"],"prefix":"10.1145","author":[{"given":"Rodrigo C. O.","family":"Rocha","sequence":"first","affiliation":[{"name":"University of Edinburgh, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Pavlos","family":"Petoumenos","sequence":"additional","affiliation":[{"name":"University of Manchester, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Zheng","family":"Wang","sequence":"additional","affiliation":[{"name":"University of Leeds, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Murray","family":"Cole","sequence":"additional","affiliation":[{"name":"University of Edinburgh, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Hugh","family":"Leather","sequence":"additional","affiliation":[{"name":"University of Edinburgh, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2020,6,11]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"[n.d.]. Microsoft Visual Studio. Identical COMDAT Folding. https:\/\/msdn.microsoft.com\/en-us\/library\/bxwfs976.aspx."},{"key":"e_1_3_2_1_2_1","unstructured":"[n.d.]. The LLVM Compiler Infrastructure. MergeFunctions pass how it works. http:\/\/llvm.org\/docs\/MergeFunctions.html."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.5555\/255215.255225"},{"key":"e_1_3_2_1_4_1","volume-title":"Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation","author":"Budimlic Zoran","unstructured":"Zoran Budimlic, Keith D. Cooper, Timothy J. Harvey, Ken Kennedy, Timothy S. Oberg, and Steven W. Reeves. 2002. Fast Copy Coalescing and Live-Range Identification. In Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation (Berlin, Germany) (PLDI \u201902). Association for Computing Machinery, New York, NY, USA, 25\u201332."},{"key":"e_1_3_2_1_5_1","volume-title":"Code Compaction of Matching Single-Entry Multiple-Exit Regions","author":"Chen Wen Ke","unstructured":"Wen Ke Chen, Bengu Li, and Rajiv Gupta. 2003. Code Compaction of Matching Single-Entry Multiple-Exit Regions. In Static Analysis, Radhia Cousot (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 401\u2013417. Effective Function Merging in the SSA Form PLDI \u201920, June 15\u201320, 2020, London, UK"},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/800028.808480"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/314403.314414"},{"key":"e_1_3_2_1_8_1","volume-title":"Divergence Analysis and Optimizations. In 2011 International Conference on Parallel Architectures and Compilation Techniques. 320\u2013329","author":"Coutinho B.","unstructured":"B. Coutinho, D. Sampaio, F. M. Q. Pereira, and W. Meira Jr. 2011. Divergence Analysis and Optimizations. In 2011 International Conference on Parallel Architectures and Compilation Techniques. 320\u2013329."},{"key":"e_1_3_2_1_9_1","volume-title":"Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages","author":"Cytron R.","unstructured":"R. Cytron, J. Ferrante, B. K. Rosen, M. N. Wegman, and F. K. Zadeck. 1989. An Efficient Method of Computing Static Single Assignment Form. In Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (Austin, Texas, USA) (POPL \u201989). ACM, New York, NY, USA, 25\u201335."},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/115372.115320"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/4434.895109"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/349214.349233"},{"key":"e_1_3_2_1_13_1","volume-title":"Graph-Based Procedural Abstraction. In International Symposium on Code Generation and Optimization (CGO\u201907)","author":"Dreweke A.","unstructured":"A. Dreweke, M. Worlein, I. Fischer, D. Schell, T. Meinl, and M. Philippsen. 2007. Graph-Based Procedural Abstraction. In International Symposium on Code Generation and Optimization (CGO\u201907). 259\u2013270."},{"key":"e_1_3_2_1_14_1","volume-title":"Proceedings of the 2014 SIGPLAN\/SIGBED Conference on Languages, Compilers and Tools for Embedded Systems (LCTES \u201914)","author":"Tobias","unstructured":"Tobias J.K. Edler von Koch, Bj\u00f6rn Franke, Pranav Bhandarkar, and Anshuman Dasgupta. 2014. Exploiting Function Similarity for Code Size Reduction. In Proceedings of the 2014 SIGPLAN\/SIGBED Conference on Languages, Compilers and Tools for Embedded Systems (LCTES \u201914). ACM, New York, NY, USA, 85\u201394."},{"key":"e_1_3_2_1_15_1","volume-title":"Code Compression. In Proceedings of the ACM SIGPLAN 1997 Conference on Programming Language Design and Implementation (PLDI \u201997)","author":"Ernst Jens","year":"1997","unstructured":"Jens Ernst, William Evans, Christopher W. Fraser, Todd A. Proebsting, and Steven Lucco. 1997. Code Compression. In Proceedings of the ACM SIGPLAN 1997 Conference on Programming Language Design and Implementation (PLDI \u201997). ACM, New York, NY, USA, 358\u2013365."},{"key":"e_1_3_2_1_16_1","volume-title":"The C2 Register Allocator. https:\/\/wiki.openjdk.java.net\/display\/HotSpot\/The+C2+Register+Allocator. Page visited on 2020 and last modified on","author":"Java","year":"2013","unstructured":"Java OpenJDK. [n.d.]. The C2 Register Allocator. https:\/\/wiki.openjdk.java.net\/display\/HotSpot\/The+C2+Register+Allocator. Page visited on 2020 and last modified on Apr 15, 2013."},{"key":"e_1_3_2_1_17_1","volume-title":"C2 Register Allocator Notes. https:\/\/wiki.openjdk.java.net\/display\/HotSpot\/C2+Register+Allocator+Notes. Page visited on 2020 and last modified on","author":"Java","year":"2009","unstructured":"Java OpenJDK. [n.d.]. C2 Register Allocator Notes. https:\/\/wiki.openjdk.java.net\/display\/HotSpot\/C2+Register+Allocator+Notes. Page visited on 2020 and last modified on Apr 9, 2009."},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/178243.178256"},{"key":"e_1_3_2_1_19_1","volume-title":"Proceedings of Technical Program of 2012 VLSI Technology, System and Application. 1\u20134.","author":"Kwan Doug","unstructured":"Doug Kwan, Jing Yu, and B. Janakiraman. 2012. Google\u2019s C\/C++ toolchain for smart handheld devices. In Proceedings of Technical Program of 2012 VLSI Technology, System and Application. 1\u20134."},{"key":"e_1_3_2_1_20_1","volume-title":"Optimizing large applications. arXiv preprint arXiv:1403.6997","author":"Li\u0161ka Martin","year":"2014","unstructured":"Martin Li\u0161ka. 2014. Optimizing large applications. arXiv preprint arXiv:1403.6997 (2014)."},{"key":"e_1_3_2_1_21_1","volume-title":"Proceedings of the 2004 GCC Developers\u2019 Summit. 79\u201384","author":"L\u00f3ki G\u00e1bor","year":"2004","unstructured":"G\u00e1bor L\u00f3ki, \u00c1kos Kiss, Judit J\u00e1sz, and \u00c1rp\u00e1d Besz\u00e9des. 2004. Code factoring in GCC. In Proceedings of the 2004 GCC Developers\u2019 Summit. 79\u201384."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/36206.36194"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380151102"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-2836(70)90057-4"},{"key":"e_1_3_2_1_25_1","volume-title":"SSA Elimination after Register Allocation","author":"Quint\u00e3o Pereira Fernando Magno","unstructured":"Fernando Magno Quint\u00e3o Pereira and Jens Palsberg. 2009. SSA Elimination after Register Allocation. In Compiler Construction, Oege de Moor and Michael I. Schwartzbach (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 158\u2013173."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2019.8661192"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3168807"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2019.8661174"},{"key":"e_1_3_2_1_29_1","volume-title":"2016 IEEE\/ACM 38th International Conference on Software Engineering (ICSE). 1157\u20131168","author":"Sajnani H.","unstructured":"H. Sajnani, V. Saini, J. Svajlenko, C. K. Roy, and C. V. Lopes. 2016. SourcererCC: Scaling Code Clone Detection to Big-Code. In 2016 IEEE\/ACM 38th International Conference on Software Engineering (ICSE). 1157\u20131168."},{"key":"e_1_3_2_1_30_1","unstructured":"SPEC. 2014. Standard Performance Evaluation Corp Benchmarks. http:\/\/www.spec.org."},{"key":"e_1_3_2_1_31_1","volume-title":"Xinliang David Li, and Chris Demetriou.","author":"Tallam Sriraman","year":"2010","unstructured":"Sriraman Tallam, Cary Coutant, Ian Lance Taylor, Xinliang David Li, and Chris Demetriou. 2010. Safe ICF: Pointer Safe and Unwinding Aware Identical Code Folding in Gold. In GCC Developers Summit."},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/357153.357155"}],"event":{"name":"PLDI '20: 41st ACM SIGPLAN International Conference on Programming Language Design and Implementation","location":"London UK","acronym":"PLDI '20","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3385412.3386030","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3385412.3386030","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:38:49Z","timestamp":1750199929000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3385412.3386030"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,6,11]]},"references-count":32,"alternative-id":["10.1145\/3385412.3386030","10.1145\/3385412"],"URL":"https:\/\/doi.org\/10.1145\/3385412.3386030","relation":{},"subject":[],"published":{"date-parts":[[2020,6,11]]},"assertion":[{"value":"2020-06-11","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}