First ARM support. Not covering many edge cases and no error checking