Port most of the Linjector to ARM