US 12,229,541 B2
Dual architecture function pointers having consistent reference addresses
Pedro Miguel Sequeira De Justo Teixeira, Kirkland, WA (US); Darek Josip Mihocka, Mercer Island, WA (US); Jon Robert Berry, Woodinville, WA (US); Russell Charles Hadley, Bellevue, WA (US); James David Cleary, Seattle, WA (US); and Clarence Siu Yeen Dang, Newcastle, WA (US)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Jun. 13, 2023, as Appl. No. 18/333,709.
Application 18/333,709 is a continuation of application No. 17/550,452, filed on Dec. 14, 2021, granted, now 11,720,335.
Application 17/550,452 is a continuation of application No. 17/008,270, filed on Aug. 31, 2020, granted, now 11,231,918, issued on Jan. 25, 2022.
Prior Publication US 2023/0418581 A1, Dec. 28, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 8/41 (2018.01)
CPC G06F 8/47 (2013.01) [G06F 8/447 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method implemented in a computer system that includes a processor implementing a native ISA (instruction set architecture), comprising:
determining that a callee function corresponds to a native ABI (application binary interface) that corresponds to the native ISA and that has a first calling convention, based at least on identifying a call that targets a reference memory address for the callee function; and
based on a caller function corresponding to a foreign ABI that corresponds to a foreign ISA and that has a second calling convention, initiating execution of the callee function calling an entry thunk that:
adapts the second calling convention to the first calling convention, and
directly calls the callee function using the reference memory address.