This change modifies how ObjectFileELF determines the architecture of an ELF file. It no longer assumes the elf file's vendor and OS is the same as the current host. It is one step in supporting running lldb across MacOSX/Linux/FreeBSD/NetBSD.
The current ELF note parsing added supports checking for a FreeBSD, Linux, and NetBSD ABI note. If found, the OS is set appropriately. The previously-existing GNU UUID note parsing code has been incorporated into the broader note-parsing code provided here.
I think this should be fine (and will test in a moment):
version_major = version_info / 100000;
version_minor = (version_info / 1000) % 100;
But something's odd with LLDB's FreeBSD platform triples - it reports -freebsd10.0 on my FreeBSD 11-current laptop, and -freebsd9.1 on my FreeBSD 9.2 desktop.