Improve the detection of the path

Summary:
When clang is used under GNU/Linux in a chroot without /proc mount, it falls
back on the BSD method. However, since the buf variable is used twice
and fails with snprintf to produce the correct path.

When called as relatived (ie ./clang), it was failing with:
 "" -cc1 [...] -x c++ x.cc
error: unable to execute command: Executable "" doesn't exist!


I also took the opportunity to simply the code (the first arg of test_dir
was useless).

Reviewers: rafael

Reviewed By: rafael

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2361

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196791 91177308-0d34-0410-b5e6-96231b3b80d8
DwarfDebug/Unit: Remove another case of label recreation by storing the gnu_ranges label in the unit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196793 91177308-0d34-0410-b5e6-96231b3b80d8

Fix pattern match for movi with 0D result

Patch by Jiangning Liu.

With some test case changes:
- intrinsic test added to the existing /test/CodeGen/AArch64/neon-aba-abd.ll.
- New test cases to cover movi 1D scenario without using the intrinsic in
test/CodeGen/AArch64/neon-mov.ll.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196806 91177308-0d34-0410-b5e6-96231b3b80d8
Don't set a variable to its default value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196807 91177308-0d34-0410-b5e6-96231b3b80d8
Use a more direct check for finding out the file type.

No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196811 91177308-0d34-0410-b5e6-96231b3b80d8
Don't add suffixes for stdcall/fastcall on 64 coff.

This matches the behavior of both msvc and mingw.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196814 91177308-0d34-0410-b5e6-96231b3b80d8
Delete some old code used for testing that is not needed anymore.
This is part of the mips16 epilogue/prologue cleanup.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196824 91177308-0d34-0410-b5e6-96231b3b80d8
get rid of superfluous comment



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196829 91177308-0d34-0410-b5e6-96231b3b80d8
[AArch64] Remove q and non-q intrinsic definitions in the NEON scalar reduce
pairwise implementation, using an overloaded definition instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196831 91177308-0d34-0410-b5e6-96231b3b80d8
[AArch64] Refactor NEON scalar reduce pairwise front-end codegen to remove
unnecessary patterns in tablegen.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196832 91177308-0d34-0410-b5e6-96231b3b80d8
[AArch64] Refactor the NEON scalar reduce pairwise intrinsics, so that they use
float/double rather than the vector equivalents when appropriate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196833 91177308-0d34-0410-b5e6-96231b3b80d8
Rename Unit->DwarfUnit to match the file name and make it a bit less
ambiguous. Reformat to match.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196838 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor the construction of the DataLayout string on ARM.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196843 91177308-0d34-0410-b5e6-96231b3b80d8
Rename CompileUnit->DwarfCompileUnit and TypeUnit->DwarfTypeUnit for
clarity. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196844 91177308-0d34-0410-b5e6-96231b3b80d8
Transforms: Don't create bad branch weights when folding a switch

This avoids creating branch weight metadata of length one when we fold
cases into the default of a switch instruction, which was triggering
an assert.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196845 91177308-0d34-0410-b5e6-96231b3b80d8
Simplify further.

Thanks to Jim Grosbach for noticing it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196846 91177308-0d34-0410-b5e6-96231b3b80d8
80-col.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196848 91177308-0d34-0410-b5e6-96231b3b80d8
We never emit info into the macro info section, stop emitting an
empty one.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196849 91177308-0d34-0410-b5e6-96231b3b80d8
Add comments documenting the ARM datalayout string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196850 91177308-0d34-0410-b5e6-96231b3b80d8
Disable emitting DW_AT_GNU_ranges_base until we actually use it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196851 91177308-0d34-0410-b5e6-96231b3b80d8