Fix more of the x86 assembler for the Mac.
Fix more of the x86 assembler for the Mac.

The LITERAL macro only works inside [gas] macros. You _must_ use it in a [gas]
macro, but must _not_ use it outside of a [gas] macro.

Also, today's changes added function definitions that didn't go via any of the
existing macros, which were hiding the details of Mac OS name mangling. I've
added a new DEFINE_FUNCTION macro to hide this for regular functions.

This builds and links on Mac OS and Linux.

Change-Id: Ifb775c85d4ecc4952f5338866487d897ce6f0a6a

treadstoneproject/artinst,treadstoneproject/artinst,treadstoneproject/artinst,treadstoneproject/artinst,treadstoneproject/artinst