1. [AArch64] Fix offset calculation (details)
  2. [dsymutil] Print warning/error for unknown/missing arguments. (details)
Commit 6d1891c508fecf189d1d76b43740b144b91aae23 by smeenai
[AArch64] Fix offset calculation
r374772 changed Offset to be an int64_t but left NewOffset as an int.
Scale is unsigned, so in the calculation `Offset - NewOffset * Scale`,
`NewOffset * Scale` was promoted to unsigned and was then zero-extended
to 64 bits, leading to an incorrect computation which manifested as an
out-of-memory when building the Swift standard library for Android
aarch64. Promote NewOffset to int64_t to fix this, and promote
EmittableOffset as well, since its one user passes it to a function
which takes an int64_t anyway.
Test case based on a suggestion by Sander de Smalen!
Differential Revision:
llvm-svn: 375043
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was addedllvm/test/CodeGen/AArch64/framelayout-offset-immediate-change.mir
Commit 8cdc842c51626b94fc20af604f640f6f195eeadb by Jonas Devlieghere
[dsymutil] Print warning/error for unknown/missing arguments.
After changing dsymutil to use libOption, we lost error reporting for
missing required arguments (input files). Additionally, we stopped
complaining about unknown arguments. This patch fixes both and adds a
llvm-svn: 375044
The file was modifiedllvm/test/tools/dsymutil/cmdline.test
The file was modifiedllvm/tools/dsymutil/dsymutil.cpp