Avoid UB deref of nullptr to reference. NFC.
authorPete Cooper <peter_cooper@apple.com>
Thu, 24 Mar 2016 01:14:10 +0000 (01:14 +0000)
committerPete Cooper <peter_cooper@apple.com>
Thu, 24 Mar 2016 01:14:10 +0000 (01:14 +0000)
Its possible for file to have no entry atom which means that there
is no atom to check for being a thumb function.  Instead just skip
the thumb check and set the entry address to 0, which matches the
current behaviour of getting a default initialised int from a map.

llvm-svn: 264233

lld/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp

index b95745f..2d71c4c 100644 (file)
@@ -715,6 +715,11 @@ void Util::updateSectionInfo(NormalizedFile &file) {
 }
 
 void Util::copyEntryPointAddress(NormalizedFile &nFile) {
+  if (!_entryAtom) {
+    nFile.entryAddress = 0;
+    return;
+  }
+
   if (_ctx.outputTypeHasEntry()) {
     if (_archHandler.isThumbFunction(*_entryAtom))
       nFile.entryAddress = (_atomToAddress[_entryAtom] | 1);