29058 Commits

Author SHA1 Message Date
Sanjoy Das
c7d3291b68 [ConstantRange] Make getEquivalentICmp smarter
This change teaches getEquivalentICmp to be smarter about generating
ICMP_NE and ICMP_EQ predicates.

An earlier version of this change was landed as rL283057 which had a
use-after-free bug.  This new version has a fix for that bug, and a (C++
unittests/) test case that would have triggered it rL283057.

llvm-svn: 283078
2016-10-02 20:59:05 +00:00
Sanjoy Das
1f7b813e2b Remove duplicated code; NFC
ICmpInst::makeConstantRange does exactly the same thing as
ConstantRange::makeExactICmpRegion.

llvm-svn: 283059
2016-10-02 00:09:57 +00:00
Martell Malone
3a4d900039 COFF: Fix short import lib import name type bitshift
As per the PE COFF spec (section 8.3, Import Name Type)
Offset: 18 Size 2 bits Name: Type
Offset: 20 Size 3 bits Name: Name Type

Offset: 20 added based on 18+2

Partially commited as rL279069

Differential Revision: https://reviews.llvm.org/D23540

llvm-svn: 283055
2016-10-01 23:10:20 +00:00
Mehdi Amini
99d1b29503 Use StringRef for MemoryBuffer identifier API (NFC)
llvm-svn: 283043
2016-10-01 16:38:28 +00:00
Mehdi Amini
7410717a62 Use StringRef in Registry API (NFC)
llvm-svn: 283039
2016-10-01 15:44:54 +00:00
Nirav Dave
e4c6153cf1 Revert "[MC] Prevent out of order HashDirective lexing in AsmLexer."
This reverts commit r282992 which appears to be causing an LTO test failure.

llvm-svn: 283034
2016-10-01 10:57:55 +00:00
Joerg Sonnenberger
b811fed0ee Split a comment into generic description and note about the specific
cmake use.

llvm-svn: 283027
2016-10-01 08:05:50 +00:00
Joerg Sonnenberger
8c744273c1 Retire LLVM_BINDIR and friends. They haven't been provided with actual
values since the switch to cmake.

llvm-svn: 283026
2016-10-01 08:03:55 +00:00
Joerg Sonnenberger
96f7f624c9 GC HAVE_STRTOQ
llvm-svn: 283023
2016-10-01 07:35:08 +00:00
Joerg Sonnenberger
8c4e421390 Retire bugpoint's -R. hack.
It got disconnected during the cmake conversion. For Miscompilation.cpp,
it was purely advisory for the user and the ToolRunner.cpp version was
trying to compensate for libs and bins in the same directory, which
hasn't been the case for a very long time.

llvm-svn: 283022
2016-10-01 07:34:18 +00:00
Mehdi Amini
9af9a9d5f9 Revert "Use StringRef instead of raw pointer in TargetRegistry API (NFC)"
This reverts commit r283017. Creates an infinite loop somehow.

llvm-svn: 283019
2016-10-01 07:08:23 +00:00
Mehdi Amini
36d33fc109 Use StringRef instead of raw pointers in MCAsmInfo/MCInstrInfo APIs (NFC)
llvm-svn: 283018
2016-10-01 06:46:33 +00:00
Mehdi Amini
cd354a659b Use StringRef instead of raw pointer in TargetRegistry API (NFC)
llvm-svn: 283017
2016-10-01 06:25:30 +00:00
Mehdi Amini
7419e940d2 Use StringRef instead of raw pointer in ExecutionEngine
llvm-svn: 283016
2016-10-01 06:22:04 +00:00
Mehdi Amini
48878ae579 Use StringRef in Datalayout API (NFC)
llvm-svn: 283013
2016-10-01 05:57:55 +00:00
Mehdi Amini
f42ec7903f DIFlags: use StringRef instead of raw pointer (NFC)
llvm-svn: 283012
2016-10-01 05:57:50 +00:00
Mehdi Amini
217b246484 Revert "Use StringRef in Datalayout API (NFC)"
This reverts commit r283009. Bots are broken.

llvm-svn: 283011
2016-10-01 05:12:48 +00:00
Mehdi Amini
29baf9c0e1 Use StringRef in Datalayout API (NFC)
llvm-svn: 283009
2016-10-01 04:17:59 +00:00
Mehdi Amini
f20abe53f4 Use StringRef in Pass Info/Support API (NFC)
llvm-svn: 283008
2016-10-01 04:03:30 +00:00
Mehdi Amini
e11b745b66 Use StringRef in CommandLine Options handling (NFC)
llvm-svn: 283007
2016-10-01 03:43:20 +00:00
Mehdi Amini
57f3529ab7 Use StringRef instead of raw pointer in MachinePassRegistry (NFC)
llvm-svn: 283006
2016-10-01 03:19:41 +00:00
Mehdi Amini
9a72cd7b21 Use StringRef in TLI instead of raw pointer (NFC)
llvm-svn: 283005
2016-10-01 03:10:48 +00:00
Mehdi Amini
117296c0a0 Use StringRef in Pass/PassManager APIs (NFC)
llvm-svn: 283004
2016-10-01 02:56:57 +00:00
Eric Christopher
e8d141c675 Remove getTargetTriple and update all uses to use the Triple off
of the TargetMachine. NFC.

llvm-svn: 283002
2016-10-01 01:50:33 +00:00
Mehdi Amini
4cc259a469 Use StringRef in LTOCodegenerator (NFC)
llvm-svn: 282998
2016-10-01 01:18:23 +00:00
Mehdi Amini
05cfdd0800 Use StringRef in LTOModule implementation (NFC)
llvm-svn: 282997
2016-10-01 01:18:16 +00:00
Mehdi Amini
b7fb124512 Use StringRef in Triple API (NFC)
llvm-svn: 282996
2016-10-01 01:16:22 +00:00
Nirav Dave
9f2bd4e7ea [MC] Prevent out of order HashDirective lexing in AsmLexer.
To lex hash directives we peek ahead to find component tokens, create a
unified token, and unlex the peeked tokens so the parser does not need
to parse the tokens then. Make sure we do not to lex another hash
directive during peek operation.

This fixes PR28921.

Reviewers: rnk, loladiro

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D24839

llvm-svn: 282992
2016-10-01 00:42:32 +00:00
Piotr Padlewski
a16c004a03 NFC fix class members initialization
llvm-svn: 282951
2016-09-30 21:05:52 +00:00
Piotr Padlewski
f3d122cd02 NFC fix doxygen comments
llvm-svn: 282950
2016-09-30 21:05:49 +00:00
Rui Ueyama
5d6714e593 Do not pass a superblock to PDBFileBuilder.
When we create a PDB file using PDBFileBuilder, the information
in the superblock, such as the size of the resulting file, is not
available.

Previously, PDBFileBuilder::initialize took a superblock assuming
that all the members of the struct are correct. That is useful when
you want to restore the exact information from a YAML file, but
that's probably the only use case in which that is useful.
When we are creating a PDB file on the fly, we have to backfill the
members.

This patch redefines PDBFileBuilder::initialize to take only a
block size. Now all the other members are left as default values,
so that they'll be updated when commit() is called.

Differential Revision: https://reviews.llvm.org/D25108

llvm-svn: 282944
2016-09-30 20:52:12 +00:00
Rui Ueyama
fc22cef98e Pass a filename instead of a msf::WritableStream to PDBFileBuilder::commit.
WritableStream needs the exact file size to open a file, but
until we fix the final layout of a PDB file, we don't know the
size of the file.

This patch changes the parameter type of PDBFileBuilder::commit
to solve that chiecken-and-egg problem. Now the function opens
a file after fixing the layout, so it can create a file with the
exact size.

Differential Revision: https://reviews.llvm.org/D25107

llvm-svn: 282940
2016-09-30 20:34:44 +00:00
Joerg Sonnenberger
e2d19c3d1e Sort LLVM_VERSION_INFO
llvm-svn: 282939
2016-09-30 20:34:02 +00:00
Joerg Sonnenberger
6398d50f70 GC left-over from workarounds for missing pid_t and size_t
llvm-svn: 282938
2016-09-30 20:32:42 +00:00
Joerg Sonnenberger
2711c0e862 GC ENABLE_PIC
llvm-svn: 282936
2016-09-30 20:30:25 +00:00
Joerg Sonnenberger
f50861ce02 GC HAVE___DSO_HANDLE
llvm-svn: 282935
2016-09-30 20:29:19 +00:00
Joerg Sonnenberger
39d7fc9162 Correctly expand HOST_LINK_VERSION.
llvm-svn: 282934
2016-09-30 20:28:42 +00:00
Joerg Sonnenberger
160e5db2e4 Fix expansion of HAVE_SYS_MMAN_H
llvm-svn: 282933
2016-09-30 20:27:41 +00:00
Joerg Sonnenberger
cc08c800ee GC HAVE_LINK_EXPORT_DYNAMIC.
llvm-svn: 282932
2016-09-30 20:26:31 +00:00
Joerg Sonnenberger
d9870fa0f1 GC HAVE_MMAP and HAVE_MMAP_FILE
llvm-svn: 282931
2016-09-30 20:24:54 +00:00
Joerg Sonnenberger
dd4d1001f0 Spell comment consistently with other library comments.
llvm-svn: 282930
2016-09-30 20:24:21 +00:00
Joerg Sonnenberger
77f495e630 Sort LINK_POLLY_INTO_TOOLS.
llvm-svn: 282929
2016-09-30 20:21:35 +00:00
Joerg Sonnenberger
37cb44c484 GC STDC_HEADERS.
llvm-svn: 282928
2016-09-30 20:19:02 +00:00
Joerg Sonnenberger
10c45e226b Deal with the (historic) MAP_ANONYMOUS vs MAP_ANON directly by using CPP
to check for the former, don't depend on (dangling) HAVE_MMAP_ANONYMOUS.

llvm-svn: 282925
2016-09-30 20:17:23 +00:00
Joerg Sonnenberger
18a2fb2d28 Retire NEED_DEV_ZERO_FOR_MMAP. It should be needed only on outdated
systems. It wasn't even hooked up in cmake, so problems on such systems
would be visible with 3.9 release already.

llvm-svn: 282924
2016-09-30 20:16:01 +00:00
Joerg Sonnenberger
067a4c1cf5 GC HAVE_LIBDL, HAVE_LIBM and HAVE_LIBOLE32
llvm-svn: 282922
2016-09-30 20:09:45 +00:00
Joerg Sonnenberger
ca44b886b2 Sort HAVE_LIBEDIT.
llvm-svn: 282921
2016-09-30 20:08:36 +00:00
Joerg Sonnenberger
2cd87a0cf2 Turn ENABLE_CRASH_OVERRIDES into a 0/1 definition.
llvm-svn: 282919
2016-09-30 20:06:19 +00:00
Joerg Sonnenberger
0e3cc3c67c Convert ENABLE_BACKTRACES into a 0/1 definition.
llvm-svn: 282918
2016-09-30 20:04:24 +00:00
Joerg Sonnenberger
104ce0e4a6 GC TIME_WITH_SYS_TIME and TM_IN_SYS_TIME
llvm-svn: 282917
2016-09-30 19:59:58 +00:00