machine model in compiler design