The Need for the VOLATILE keyword in assembly x86_64