summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Document an interesting LTO case.Rafael Espindola2016-06-152-0/+27
| | | | | | | This is a reduction from the only symbol in a build of clang that the gold plugin internalizes but lld does not. llvm-svn: 272845
* Set TERM env var for Xcode gtestsTodd Fiala2016-06-151-1/+1
| | | | | | | | | | | | Not sure what changed, but something outside our code is failing one of the EditLine gtests on OS X CI (and locally) before the gtest ever gets to run. This fails the first EditLine gtest. This change exports the TERM as "vt100" before running the lldb-gtest binary, fixing the issue. llvm-svn: 272844
* [Codeview] Add a class for LF_UDT_MOD_SRC_LINE.Rui Ueyama2016-06-157-70/+130
| | | | | | Differential Revision: http://reviews.llvm.org/D21406 llvm-svn: 272843
* [PM] Remove unneded doFinalization() override from LoopVersioningLICM.Davide Italiano2016-06-151-4/+0
| | | | llvm-svn: 272842
* [x86, SSE] update packed FP compare tests for direct translation from ↵Sanjay Patel2016-06-153-53/+97
| | | | | | | | | | | | | builtin to IR The clang side of this was r272840: http://reviews.llvm.org/rL272840 A follow-up step would be to auto-upgrade and remove these LLVM intrinsics completely. Differential Revision: http://reviews.llvm.org/D21269 llvm-svn: 272841
* [x86] translate SSE packed FP comparison builtins to IRSanjay Patel2016-06-154-153/+185
| | | | | | | | | | | | | As noted in the code comment, a potential follow-on would be to remove the builtins themselves. Other than ord/unord, this already works as expected. Eg: typedef float v4sf __attribute__((__vector_size__(16))); v4sf fcmpgt(v4sf a, v4sf b) { return a > b; } Differential Revision: http://reviews.llvm.org/D21268 llvm-svn: 272840
* Merge two coverage tests undef UBSan into one.Evgeniy Stepanov2016-06-152-19/+5
| | | | | | Also replace mkdir -p with rm -rf && mkdir. llvm-svn: 272839
* Address a few coding style issues. NFC.Chad Rosier2016-06-151-9/+7
| | | | llvm-svn: 272838
* Fix llvm-objdump when disassembling a stripped Mach-O binary with the -macho ↵Kevin Enderby2016-06-154-1/+33
| | | | | | | | | | | | | | | | | | option. It was printing out nothing in this case. llvm-objdump tries to disassemble sections a symbol at a time. In the case of a fully stripped Mach-O executable the only symbol remaining in the (__TEXT,__text) section is the special linker defined symbol __mh_execute_header . This symbol is special in that while it is N_SECT symbol in the (__TEXT,__text) its address is before the start of the (__TEXT,__text). It’s address is the start of the __TEXT segment which is where the mach header is statically linked. So the code in DisassembleMachO() needs to deal with this case specially. rdar://26778273 llvm-svn: 272837
* [Hexagon] Fix/simplify some conditional statementsKrzysztof Parzyszek2016-06-151-3/+3
| | | | | | Fix for PR28138. llvm-svn: 272836
* [X86]: Fix for uninitialized access introduced in r272797.Kevin B. Smith2016-06-151-0/+4
| | | | llvm-svn: 272835
* [x86] delete unnecessary function declarationsSanjay Patel2016-06-151-4/+0
| | | | | | Missed this in r272806, r272807. llvm-svn: 272834
* [CFLAA] Ignore non-pointers, move Attrs to graph nodes.George Burgess IV2016-06-151-64/+93
| | | | | | | | | | | | | | This patch makes CFLAA ignore non-pointer values, since we can now sanely do that with the escaping/unknown attributes. Additionally, StratifiedAttrs make more sense to sit on nodes than edges (since they're properties of values, and ultimately end up on the nodes of StratifiedSets). So, this patch puts said attributes on nodes. Patch by Jia Chen. Differential Revision: http://reviews.llvm.org/D21387 llvm-svn: 272833
* Add support to clang-cl driver for /GS switchEtienne Bergeron2016-06-154-3/+31
| | | | | | | | | | | | | | | | | | | Summary: This patch is adding command-line support for the MSVC buffer security check. The buffer security check is turned on with the '/GS' compiler switch. https://msdn.microsoft.com/en-us/library/8dbf701c.aspx The MSVC buffer security check in implemented here: http://reviews.llvm.org/D20346 Reviewers: hans, rnk Subscribers: chrisha, cfe-commits, rnk, hans, thakis Differential Revision: http://reviews.llvm.org/D20347 llvm-svn: 272832
* AArch64: stop trying to use 32-bit MOVZs when expanding patchpoints.Tim Northover2016-06-152-6/+13
| | | | | | | | | | | Of course the assembly was right but because the opcode was MOVZWi it was encoded as "movz w16, #65535, lsl #32" which is an unallocated encoding and would go horribly wrong on a CPU. No idea how this bug survived this long. It seems nobody is using that aspect of patchpoints. llvm-svn: 272831
* Axe some trailing whitespace from my last commitReid Kleckner2016-06-151-20/+20
| | | | llvm-svn: 272830
* [codeview] Move deserialization methods out of lineReid Kleckner2016-06-152-309/+386
| | | | | | They aren't performance critical and don't need to be inline. llvm-svn: 272829
* [x86] add folds for x86 vector compare nodes (PR27924)Sanjay Patel2016-06-152-7/+21
| | | | | | | | | | | | | Ideally, we can get rid of most x86 LLVM intrinsics by transforming them to IR (and some of that happened with http://reviews.llvm.org/rL272807), but it doesn't cost much to have some simple folds in the backend too while we're working on that and as a backstop. This fixes: https://llvm.org/bugs/show_bug.cgi?id=27924 Differential Revision: http://reviews.llvm.org/D21356 llvm-svn: 272828
* Add an Android version check for GNU strerror_r.Dan Albert2016-06-151-1/+6
| | | | | | | | | | | | | | | | Summary: Android didn't gain GNU's strerror_r until Marshmallow. If we're building libc++ against something older (we build the NDK library against the oldest release we support, currently Gingerbread), fall back to the POSIX version. Reviewers: mclow.lists, EricWF Subscribers: tberghammer, danalbert, srhines, cfe-commits Differential Revision: http://reviews.llvm.org/D21402 llvm-svn: 272827
* Statistic: Add machine parseable json outputMatthias Braun2016-06-153-18/+88
| | | | | | | | | | | | - We lacked a short unique identifier for a statistics, so I renamed the current "Name" field that just contained the DEBUG_TYPE name of the current file to DebugType and added a new "Name" field that contains the C++ identifier of the statistic variable. - Add the -stats-json option which outputs statistics in json format. Differential Revision: http://reviews.llvm.org/D20995 llvm-svn: 272826
* Add a few Musl related tests that already pass.Rafael Espindola2016-06-151-4/+28
| | | | | | Patch by Lei Zhang. llvm-svn: 272825
* Fix [libcxxabi] Fix warning about uninitialized const member.Eric Fiselier2016-06-151-1/+2
| | | | llvm-svn: 272824
* Fix warning about uninitialized const member. NFCEric Fiselier2016-06-151-0/+1
| | | | llvm-svn: 272823
* Fix warning in tuple tests. The test suite should now run clean with most ↵Eric Fiselier2016-06-151-8/+3
| | | | | | warnings enabled llvm-svn: 272822
* [libcxxabi] Reorder base class initializers in libc++abi tests to prevent ↵Eric Fiselier2016-06-152-4/+4
| | | | | | | | | | | | | | | | | | | -Wreorder Summary: This patch fixes -Wreorder warnings on test classes with virtual bases. Since the compiler is performing the reordering anyway this change *should* have NFC. However the test notes that it is checking that "virtual base classes work properly". Since initialization order is clearly part of correctness I want to confirm that this wasn't an intentional mistake. Reviewers: mclow.lists, howard.hinnant Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D21396 llvm-svn: 272821
* cc1_main: Do not print statistics twice in -disable_free mode.Matthias Braun2016-06-151-2/+0
| | | | | | | | | | | | | | | llvm statistics are currently printed when the destructor of a "static ManagedStatic<StatisticInfo> StatInfo" in llvm runs. This destructor currently runs in each case as part of llvm_shutdown() which is run even in disable_free mode as part of main(). I assume that this hasn't always been the case. Removing the special code here avoids the statistics getting printed twice. Differential Revision: http://reviews.llvm.org/D21338 llvm-svn: 272820
* Suppress warnings about the operations currently under test.Eric Fiselier2016-06-158-0/+54
| | | | llvm-svn: 272819
* [LoopSimplify] Analyses do not need to be member variables.Davide Italiano2016-06-151-9/+6
| | | | | | In preparation for porting this pass to the new PM. llvm-svn: 272818
* [codeview] Use ArrayRef instead of a non-const vector referenceReid Kleckner2016-06-151-1/+1
| | | | llvm-svn: 272817
* clang-rename: implement renaming of classes with a dtorMiklos Vajna2016-06-152-0/+39
| | | | | | | | | | | The declaration wasn't renamed. Also neither part of the declaration wasn't renamed. Reviewers: klimek Differential Revision: http://reviews.llvm.org/D21364 llvm-svn: 272816
* [pdbdump] Verify LF_{CLASS,ENUM,INTERFACE,STRUCTURE,UNION} records.Rui Ueyama2016-06-151-8/+53
| | | | | | Differential Revision: http://reviews.llvm.org/D21361 llvm-svn: 272815
* [X86]: Updated r272801 to promote 16 bit compares with immediate operandKevin B. Smith2016-06-153-2/+35
| | | | | | to 32 bits. This is in response to a comment by Eli Friedman. llvm-svn: 272814
* [CodeView] Add support for emitting S_UDT for typedefsDavid Majnemer2016-06-154-4/+165
| | | | | | | | | Emit a S_UDT record for typedefs. We still need to do something for class types. Differential Revision: http://reviews.llvm.org/D21149 llvm-svn: 272813
* Internalize symbols in comdats.Rafael Espindola2016-06-154-7/+21
| | | | | | | We were dropping the CanOmitFromDynSym bit when creating undefined symbols because of comdat. llvm-svn: 272812
* Add support for string attributes in the C API.Amaury Sechet2016-06-159-1/+104
| | | | | | | | | | | | Summary: As per title. This completes the C API Attribute support. Reviewers: Wallbraker, whitequark, echristo, rafael, jyknight Subscribers: mehdi_amini Differential Revision: http://reviews.llvm.org/D21365 llvm-svn: 272811
* [esan|cfrag] Minor cfrag report adjustmentQin Zhao2016-06-151-11/+16
| | | | | | | | | | | | | | | | | | Summary: Reports the struct field access info only if it has been used at least once. Adds type printing size limit. Formats the cache_frag.cpp with clang-format. Reviewers: bruening Subscribers: llvm-commits, eugenis, kcc, zhaoqin, vitalybuka, aizatsky, kubabrecka Differential Revision: http://reviews.llvm.org/D21351 llvm-svn: 272810
* Add -Wno-unused-command-line-argument when running the test suite to prevent ↵Eric Fiselier2016-06-151-0/+1
| | | | | | errors llvm-svn: 272809
* Test commit after access grant. Modified comment by adding a period. Pankaj Gode2016-06-151-1/+1
| | | | llvm-svn: 272808
* [x86] generate IR for SSE integer min/max builtinsSanjay Patel2016-06-153-12/+51
| | | | | | | Sibling patch to r272806: http://reviews.llvm.org/rL272806 llvm-svn: 272807
* [x86, SSE] remove the GCCBuiltins from the integer min/max intrinsicsSanjay Patel2016-06-153-44/+48
| | | | | | | | This allows us to emit native IR in Clang (next commit). Also, update the intrinsic tests to show that codegen already knows how to handle the IR that Clang will soon produce. llvm-svn: 272806
* [x86] fix function name; NFCSanjay Patel2016-06-151-2/+2
| | | | llvm-svn: 272805
* Fix const default initialization of lock_guard<>Eric Fiselier2016-06-151-1/+1
| | | | llvm-svn: 272804
* [clang-tidy] Remove dead code. NFC.Benjamin Kramer2016-06-152-17/+0
| | | | llvm-svn: 272803
* [TargetLibraryInfo] Teach isValidProtoForLibFunc about tanDavid Majnemer2016-06-152-0/+15
| | | | | | | | | We would fail to validate the type of the tan function which would cause downstream users of isValidProtoForLibFunc to assert. This fixes PR28143. llvm-svn: 272802
* [X86]: Quit promoting 8 and 16 bit compares to 32 bit.Kevin B. Smith2016-06-159-100/+73
| | | | | | Differential Revision: http://reviews.llvm.org/D21144 llvm-svn: 272801
* Allow runtimes to execute custom LLVM ModulePasses over the expression IRLuke Drummond2016-06-153-1/+58
| | | | | | | | | | | | | | | | During expression evaluation, the ClangExpressionParser preforms a number of hard-coded fixups on the expression's IR before the module is assembled and dispatched to be run in a ThreadPlan. This patch allows the runtimes to register LLVM passes to be run over the generated IR, that they may perform language or architecture-specfic fixups or analyses over the generated expression. This makes expression evaluation for plugins more flexible and allows language-specific fixes to reside in their own module, rather than littering the expression evaluator itself with language-specific fixes. llvm-svn: 272800
* Revert "Preserve DebugInfo when replacing values in DAGCombiner"Nirav Dave2016-06-157-32/+14
| | | | | | | | | Reverting due to assertion failure in lib/CodeGen/SelectionDAG/InstrEmitter.cpp This reverts commit r272792. llvm-svn: 272799
* [Sparc] setjmp and longjmp intrinsic support update to add unit tests and ↵Chris Dewhurst2016-06-152-1/+1
| | | | | | | | remove accidentally checked-in code. Related to revision r272782 llvm-svn: 272798
* [X86]: Improve Liveness checking for X86FixupBWInsts.cppKevin B. Smith2016-06-152-39/+134
| | | | | | Differential Revision: http://reviews.llvm.org/D21085 llvm-svn: 272797
* [LV] Add getter function for LoopVectorizationLegality::Strides. NFCAdam Nemet2016-06-151-6/+8
| | | | | | This should help moving Strides to LAA later. llvm-svn: 272796
OpenPOWER on IntegriCloud