summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* This patch adds doxygen comments for the intrinsincs in the header file ↵Ekaterina Romanova2016-01-291-0/+85
| | | | | | | | | | __wmmintrin_aes.h. The doxygen comments are automatically generated based on Sony's intrinsics document. Differential Revision: http://reviews.llvm.org/D16562 llvm-svn: 259275
* Update comments about the entries in .got.plt.Rui Ueyama2016-01-291-8/+9
| | | | | | The original comments were a bit inaccurate because there was no 4 addends. llvm-svn: 259274
* [profile] Support hostname expansion in LLVM_PROFILE_FILEVedant Kumar2016-01-293-8/+57
| | | | | | | | | | | This patch adds support for expanding "%h" out to the machine hostname in the LLVM_PROFILE_FILE environment variable. Patch by Daniel Waters! Differential Revision: http://reviews.llvm.org/D16371 llvm-svn: 259272
* Improve -Wconstant-conversionRichard Trieu2016-01-293-3/+70
| | | | | | | | | | | | | | Switch the evaluation from isIntegerConstantExpr to EvaluateAsInt. EvaluateAsInt will evaluate more types of expressions than isIntegerConstantExpr. Move one case from -Wsign-conversion to -Wconstant-conversion. The case is: 1) Source and target types are signed 2) Source type is wider than the target type 3) The source constant value is positive 4) The conversion will store the value as negative in the target. llvm-svn: 259271
* [Objective-C] Support a new special module flag.Manman Ren2016-01-291-0/+1
| | | | | | | | "Objective-C Class Properties" will be put into the objc_imageinfo struct. rdar://23891898 llvm-svn: 259270
* Class Property: generate metadata for class properties in protocols.Manman Ren2016-01-293-6/+21
| | | | | | | | | | The list of class properties is saved in Old ABI: protocol->ext->class_properties (protocol->ext->size will be updated) New ABI: protocol->class_properties (protocol->size will be updated) rdar://23891898 llvm-svn: 259268
* Class Property: generate metadata for class properties in categories.Manman Ren2016-01-292-4/+45
| | | | | | | | | | | The list of class properties is saved in Old ABI: category->class_properties (category->size will be updated as well) New ABI: category->class_properties (a flag in objc_image_info to indicate whether or not the list of class properties is present) rdar://23891898 llvm-svn: 259267
* [llvm-nm] Add a comment to explain why we initialize MC.Davide Italiano2016-01-291-0/+1
| | | | llvm-svn: 259266
* [libFuzzer] add -timeout_exitcode optionKostya Serebryany2016-01-296-1/+7
| | | | llvm-svn: 259265
* function names start with a lower case letter ; NFCSanjay Patel2016-01-291-25/+25
| | | | llvm-svn: 259264
* [libFuzzer] re-enable test for -abort_on_timeout=1, this time protecting ↵Kostya Serebryany2016-01-291-1/+1
| | | | | | from ASAN_OPTIONS set outside llvm-svn: 259263
* fix formatting; NFCSanjay Patel2016-01-291-4/+8
| | | | llvm-svn: 259262
* Fix typo in LoopSimplifyCFGFiona Glaser2016-01-291-1/+1
| | | | llvm-svn: 259261
* [UBSan] Add documentation for runtime issue suppression.Alexey Samsonov2016-01-291-0/+32
| | | | llvm-svn: 259260
* Add comments on a mysterious value in MIPS GOT[1].Rui Ueyama2016-01-291-2/+17
| | | | | | Thanks to Simon Atanasyan and Igor Kudrin for describing the code! llvm-svn: 259259
* [Profiling] Add a -sparse mode to llvm-profdata mergeVedant Kumar2016-01-297-44/+125
| | | | | | | | | | Add an option to llvm-profdata merge for writing out sparse indexed profiles. These profiles omit InstrProfRecords for functions which are never executed. Differential Revision: http://reviews.llvm.org/D16727 llvm-svn: 259258
* Fix the MSVC build by moving static asserts into constructorsReid Kleckner2016-01-291-5/+5
| | | | | | | Apparently MSVC won't allow you to ask for the sizeof() a data member at class scope. llvm-svn: 259257
* Add LoopSimplifyCFG passFiona Glaser2016-01-297-0/+160
| | | | | | | | | | | | | | | | | | | | | Loop transformations can sometimes fail because the loop, while in valid rotated LCSSA form, is not in a canonical CFG form. This is an extremely simple pass that just merges obviously redundant blocks, which can be used to fix some known failure cases. In the future, it may be enhanced with more cases (and have code shared with SimplifyCFG). This allows us to run LoopSimplifyCFG -> LoopRotate -> LoopUnroll, so that SimplifyCFG cleans up the loop before Rotate tries to run. Not currently used in the pass manager, since this pass doesn't do anything unless you can hook it up in an LPM with other loop passes. It'll be added once Chandler cleans up things to allow this. Tested in a custom pipeline out of tree to confirm it works in practice (in addition to the included trivial test). llvm-svn: 259256
* Need #include <cstdint> for uint64_tMatthias Braun2016-01-291-1/+2
| | | | llvm-svn: 259255
* Need #include <climit> for CHAR_BITMatthias Braun2016-01-291-0/+1
| | | | llvm-svn: 259254
* Improve test speed/trial 2Xinliang David Li2016-01-291-14/+12
| | | | llvm-svn: 259253
* AttributeSetImpl: Summarize existing function attributes in a bitset.Matthias Braun2016-01-294-2/+40
| | | | | | | | | | | The majority of attribute queries checks for the existence of an enum attribute in the FunctionIndex slot. We only have 48 of those and can therefore summarize them in an uint64_t bitset which measurably improves compile time. Differential Revision: http://reviews.llvm.org/D16618 llvm-svn: 259252
* AttributeSetNode: Summarize existing attributes in a bitset.Matthias Braun2016-01-292-12/+20
| | | | | | | | | | | The majority of queries just checks for the existince of an enum attribute. We only have 48 of those and can summaryiz them in an uint64_t bitfield so we can avoid searching the list. This improves "opt" compile time by 1-4% in my measurements. Differential Revision: http://reviews.llvm.org/D16617 llvm-svn: 259251
* Consistenly use sizeof(uintX_t) instead of ELFT::Is64Bits ? 8 : 4.Rui Ueyama2016-01-292-7/+7
| | | | llvm-svn: 259250
* Add comments.Rui Ueyama2016-01-291-6/+9
| | | | llvm-svn: 259249
* Revert 259242, 259243 -- irrelvante changes pulled inXinliang David Li2016-01-291-51/+13
| | | | llvm-svn: 259244
* Use range for loopXinliang David Li2016-01-291-7/+5
| | | | llvm-svn: 259243
* Improve test speed (interchange loop, reducing padding)Xinliang David Li2016-01-291-13/+53
| | | | llvm-svn: 259242
* Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith ↵Yaron Keren2016-01-2951-72/+71
| | | | | | | | r259192 post commit comment. clang part in r259232, this is the LLVM part of the patch. llvm-svn: 259240
* This patch adds doxygen comments for the intrinsincs in the header file ↵Ekaterina Romanova2016-01-291-0/+28
| | | | | | | | __wmmintrin_pclmul.h. The doxygen comments are automatically generated based on Sony's intrinsics document. Differential Revision: http://reviews.llvm.org/D15999 llvm-svn: 259239
* Replace code duplications with function calls.Rui Ueyama2016-01-291-9/+3
| | | | llvm-svn: 259238
* Fixed a couple of places where we were getting the module from aJim Ingham2016-01-292-5/+21
| | | | | | | section and using it w/o checking that it was valid. This can cause crashes - usually when tearing down a target. llvm-svn: 259237
* [InstCombine] avoid an insertelement transformation that induces the ↵Sanjay Patel2016-01-292-1/+47
| | | | | | | | | | | opposite extractelement fold (PR26354) We would infinite loop because we created a shufflevector that was wider than needed and then failed to combine that with the insertelement. When subsequently visiting the extractelement from that shuffle, we see that it's unnecessary, delete it, and trigger another visit to the insertelement. llvm-svn: 259236
* Fix this test for the the switch in default for IgnoreBreakpoints in ↵Jim Ingham2016-01-291-1/+6
| | | | | | SBFrame.EvaluateExpression. llvm-svn: 259234
* ELF: Report duplicate symbols as many as possible instead of the first one.Rui Ueyama2016-01-293-12/+22
| | | | | | http://reviews.llvm.org/D16647 llvm-svn: 259233
* Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith ↵Yaron Keren2016-01-2926-34/+34
| | | | | | r259192 post commit comment. llvm-svn: 259232
* Unbreak windows buildbotsDavid Majnemer2016-01-291-1/+1
| | | | llvm-svn: 259231
* [CodeView] Implement .cv_inline_linetableDavid Majnemer2016-01-299-12/+317
| | | | | | | | | | | This support is _very_ rudimentary, just enough to get some basic data into the CodeView debug section. Left to do is: - Use the combined opcodes to save space. - Do something about code offsets. llvm-svn: 259230
* Class Property: generate metadata for class properties in classes.Manman Ren2016-01-291-28/+57
| | | | | | | | | | The list of class properties is saved in Old ABI: cls->isa->ext->properties New ABI: cls->isa->ro->properties rdar://23891898 llvm-svn: 259229
* ARM: don't mangle DAG constant if it has more than one useTim Northover2016-01-292-2/+19
| | | | | | | | | | | | | | | | The basic optimisation was to convert (mul $LHS, $complex_constant) into roughly "(shl (mul $LHS, $simple_constant), $simple_amt)" when it was expected to be cheaper. The original logic checks that the mul only has one use (since we're mangling $complex_constant), but when used in even more complex addressing modes there may be an outer addition that can pick up the wrong value too. I *think* the ARM addressing-mode problem is actually unreachable at the moment, but that depends on complex assessments of the profitability of pre-increment addressing modes so I've put a real check in there instead of an assertion. llvm-svn: 259228
* Class Property: warn for synthesize on a class property.Manman Ren2016-01-293-2/+7
| | | | | | rdar://23891898 llvm-svn: 259226
* Class Property: parse @dynamic (class).Manman Ren2016-01-292-2/+29
| | | | | | rdar://23891898 llvm-svn: 259224
* [WebAssembly] Update test expectationsDerek Schuff2016-01-291-63/+1
| | | | llvm-svn: 259223
* [analyzer] Suppress null reports from defensive checks in function-like macros.Devin Coughlin2016-01-292-1/+94
| | | | | | | | | We already do this for case splits introduced as a result of defensive null checks in functions and methods, so do the same for function-like macros. rdar://problem/19640441 llvm-svn: 259222
* [analyzer] Improve Nullability checker diagnosticsAnna Zaks2016-01-296-57/+114
| | | | | | | | | - Include the position of the argument on which the nullability is violated - Differentiate between a 'method' and a 'function' in the message wording - Test for the error message text in the tests - Fix a bug with setting 'IsDirectDereference' which resulted in regular dereferences assumed to have call context. llvm-svn: 259221
* [WebAssembly] Support frame pointerDerek Schuff2016-01-294-20/+112
| | | | | | | | | Add support for frame pointer use in prolog/epilog. Supports dynamic allocas but not yet over-aligned locals. Target-independend CG generates SP updates, but we still need to write back the SP value to memory when necessary. llvm-svn: 259220
* [X86] Add missing "CHECK" colon in r259065 test.Ahmed Bougacha2016-01-291-1/+1
| | | | llvm-svn: 259219
* Revert r259210 "Extend hasType narrowing matcher for TypedefDecls, add ↵Hans Wennborg2016-01-295-132/+14
| | | | | | | | functionProtoType matcher for FunctionProtoType nodes, extend parameterCountIs to FunctionProtoType nodes." It didn't pass check-clang. llvm-svn: 259218
* [codeview] Begin to add support for inlined call sitesReid Kleckner2016-01-295-5/+342
| | | | | | | | | | | | | | | | | | | | | Summary: There are three parts to inlined call frames: 1. The inlinee line subsection 2. The inline site symbol record 3. The function ids referenced by both This change starts by emitting function ids (3) for all subprograms and emitting the base inline site symbol record (2). The actual line numbers in (2) use an encoded format that will come next, along with the inlinee line subsection. Reviewers: majnemer Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16333 llvm-svn: 259217
* Revert "fix up missing header from change r259084."Todd Fiala2016-01-291-1/+0
| | | | | | | | This change was made based on a bad signal from the Green Dragon LLDB builder. This change was not needed. Reverting out r259114. llvm-svn: 259216
OpenPOWER on IntegriCloud