CLI Conventions for the Embedded CLI Compilers

Abstract
This document discusses the conventions used by the embedded CLI compilers (AOT and JIT) to access extra information required to generate high-performance native code at moderate compilation time cost.

1. Introduction

Generating high-performance code in constrained time with an embedded CLI compiler (ECC) requires that extra information is associated with the CLI metadata and byte-code. This extra information can be classified along the following types:

2. Short-Term Requirements

Information that cannot be recovered from program analysis:

Information that is not available in non-dynamic mode:

Information that is performance-critical and expensive to recompute: