This patch sets the UWTable attribute to generate the unwind table when needed only. Consequently don't emit the.exidx and .extab sections if the language doesn't require them.
Set in Clang only when exceptions are supported (https://reviews.llvm.org/D31140)
This makes the -fno-unwind-tables and -fno-exceptions options effective, matching GCC behavior. This is also a code size optimization since those sections map in the loadable text segment.