ePrints@IIScePrints@IISc Home | About | Browse | Latest Additions | Advanced Search | Contact | Help

Detecting Full Initialization Points of Objects to Support Code Refactorings

Rama, GM and Komondoor, R (2018) Detecting Full Initialization Points of Objects to Support Code Refactorings. In: 24th Asia-Pacific Software Engineering Conference, APSEC 2017, 4 - 8 December 2017, Nanjing, Jiangsu, pp. 110-119.

[img] PDF
APSEC 2017_2017_110-119_2018.pdf - Published Version
Restricted to Registered users only

Download (620kB) | Request a copy
Official URL: https://doi.org/10.1109/APSEC.2017.17

Abstract

A common need of refactorings that involve object allocations is to determine precisely the program points at which objects allocated at a given allocation site become fully initialized. In this paper we formalize the notion of full initialization points (FIPs) of allocation sites, and present a static analysis to determine precisely these program points. While this analysis can benefit several allocation-site refactorings, to demonstrate its usefulness we select two specific refactorings in this paper - object sharing refactoring and immutability refactoring. By introducing code to cache and share objects at the FIPs suggested by our analysis, object-sharing refactoring was able to obtain a mean memory savings of 11.4 on a set of real Java benchmarks. Immutability refactoring guided by our analysis achieved a mean runtime speedup of 1.6X compared to performing the same refactoring using a baseline approach.

Item Type: Conference Paper
Publication: Proceedings - Asia-Pacific Software Engineering Conference, APSEC
Publisher: IEEE Computer Society
Additional Information: The copyright for this article belongs to the IEEE Computer Society.
Keywords: Object detection; Software engineering, Allocation sites; Initialization points; Memory savings; Object allocation; Object initialization; Object sharing; Program points; Refactorings, Static analysis
Department/Centre: Division of Electrical Sciences > Computer Science & Automation
Date Deposited: 08 Aug 2022 11:37
Last Modified: 08 Aug 2022 11:37
URI: https://eprints.iisc.ac.in/id/eprint/75634

Actions (login required)

View Item View Item