1. A method for executing a managed application that calls a procedure in a native library comprising: storing a reference associated with data to allow the data to be passed from the managed application executing in a virtual machine compatible with a first instruction set architecture (ISA) platform to the procedure in the native library, the procedure in the native library compatible with a second ISA platform different from the first ISA platform; executing the procedure in the native library; and when the data is called for by the procedure in the native library, retrieving the reference associated with the data, the reference stored in a data marshalling table and comprising first data location information compatible with the first ISA platform, the native library using second data location information compatible with the second ISA platform to call for the data, the second data location information comprising an address of the reference stored in the data marshalling table, the address being passed to the procedure in the native library, the reference being retrieved from the data marshalling table using the address.