summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* WebAssembly: update expected failuresJF Bastien2016-01-311-16/+0
| | | | | | r259305 fixed a few assertions around FrameIndex, and I forgot to update these failures despite having run the torture tests. llvm-svn: 259320
* [dsymutil] Fix FileCheck command.Frederic Riss2016-01-311-1/+1
| | | | | | Damn case-insensitive filesystem... llvm-svn: 259319
* [dsymutil] Fix handling of common symbols.Frederic Riss2016-01-319-16/+43
| | | | | | | | | | | | | | | | | llvm-dsymutil was misinterpreting the value of common symbols as their address when it actually contains their size. This didn't impact llvm-dsymutil's ability to link the debug information for common symbols because these are always found by name and not by address. Things could however go wrong when the size of a common object matched the object file address of another symbol. Depending on the link order of the symbols the common object might incorrectly evict this other object from the address to symbol mapping, and then link the evicted symbol with a wrong binary address. Use the new ability to have symbols without an object file address to fix this. llvm-svn: 259318
* [dsymutil] Allow debug map mappings with no object file address. NFCFrederic Riss2016-01-314-21/+31
| | | | | | | | | | | This change just changes the data structure that ties symbol names, object file address and linked binary addresses to accept mappings with no object file address. Such symbol mappings are not fed into the debug map yet, so this patch is NFC. A subsequent patch will make use of this functionality for common symbols. llvm-svn: 259317
* Replace usage of llvm::utostr_32 with just llvm::utostr. While this is less ↵Craig Topper2016-01-311-1/+1
| | | | | | efficient, its unclear that the one place using the _32 version was doing so for efficiency. llvm-svn: 259316
* [SelectionDAG] Eliminate exponential behavior in WalkChainUsersTim Shen2016-01-311-5/+20
| | | | llvm-svn: 259315
* No need to use utostr/utohexstr when writing into a raw_ostream. NFCCraig Topper2016-01-311-24/+30
| | | | llvm-svn: 259314
* Shrink character buffer size in raw_ostream::write_hex to 16 characters ↵Craig Topper2016-01-311-1/+1
| | | | | | intead of 20 as that's the largest string a 64-bit hex value can be. llvm-svn: 259313
* Use std::end instead of repeating buffer sizes.Craig Topper2016-01-312-7/+7
| | | | llvm-svn: 259312
* [Parser] Update CachedTokens while parsing ObjectiveC template argument listBruno Cardoso Lopes2016-01-314-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider the following ObjC++ snippet: -- @protocol PA; @protocol PB; @class NSArray<ObjectType>; typedef int some_t; id<PA> FA(NSArray<id<PB>> *h, some_t group); -- This would hit an assertion in the parser after generating an annotation token while trying to update the token cache: Assertion failed: (CachedTokens[CachedLexPos-1].getLastLoc() == Tok.getAnnotationEndLoc() && "The annotation should be until the most recent cached token") ... 7 clang::Preprocessor::AnnotatePreviousCachedTokens(clang::Token const&) + 494 8 clang::Parser::TryAnnotateTypeOrScopeTokenAfterScopeSpec(bool, bool, clang::CXXScopeSpec&, bool) + 1163 9 clang::Parser::TryAnnotateTypeOrScopeToken(bool, bool) + 361 10 clang::Parser::isCXXDeclarationSpecifier(clang::Parser::TPResult, bool*) + 598 ... The cached preprocessor token in this case is: greatergreater '>>' Loc=<testcase.mm:7:24> while the annotation ("NSArray<id<PB>>") ends at "testcase.mm:7:25", hence the assertion. Properly update the CachedTokens during template parsing to contain two greater tokens instead of a greatergreater. Differential Revision: http://reviews.llvm.org/D15173 rdar://problem/23494277 llvm-svn: 259311
* No need to use utostr when putting integers into a raw_ostream. NFCCraig Topper2016-01-311-5/+5
| | | | llvm-svn: 259310
* Convert an unsigned to Twine instead of using utostr since we're already ↵Craig Topper2016-01-311-1/+1
| | | | | | building a Twine. NFC llvm-svn: 259309
* Convert int to Twine instead of using utostr since it was already being ↵Craig Topper2016-01-311-1/+1
| | | | | | added to a Twine. NFC llvm-svn: 259308
* [doc] improve the doc for CUDAJingyue Wu2016-01-301-17/+21
| | | | | | | | 1. Mentioned that CUDA support works best with trunk. 2. Simplified the example by removing its dependency on the CUDA samples. 3. Explain the --cuda-gpu-arch flag. llvm-svn: 259307
* [WebAssembly] Fix uses of FrameIndex as store valuesDerek Schuff2016-01-303-6/+17
| | | | | | | | Previously the code assumed all uses of FI on loads and stores were as addresses. This checks whether the use is the address or a value and handles the latter case as it does for non-memory instructions. llvm-svn: 259306
* WebAssembly: don't optimize frameindex storeJF Bastien2016-01-303-6/+24
| | | | | | | | The previous code was incorrect (can't getReg a frameindex). We could instead optimize it to reduce tree height, but I'm not sure that's worthwhile yet because we then try to eliminate the frameindex. This patch also fixes frame index elimination for operations which may load or store: it used to assume the base was operand 2 and immediate offset operand 1. That's not true for stores, where they're 4 and 3. llvm-svn: 259305
* [AST] Pull simple method inline.Benjamin Kramer2016-01-302-5/+3
| | | | llvm-svn: 259304
* WebAssembly NFC: fix build warningJF Bastien2016-01-301-3/+3
| | | | | | WebAssemblyFrameLowering.cpp:158:44: warning: enumeral and non-enumeral type in conditional expression [enabled by default] llvm-svn: 259303
* assert(false) -> llvm_unreachable().Davide Italiano2016-01-303-3/+3
| | | | llvm-svn: 259302
* Fix build with VS2015Ismail Donmez2016-01-301-0/+2
| | | | llvm-svn: 259301
* [BasicAA] NFC - revised comment for function adjustToPointerSize()Gerolf Hoflehner2016-01-301-1/+1
| | | | llvm-svn: 259300
* [BasicAA] Fix for missing must alias (D16343)Gerolf Hoflehner2016-01-302-0/+27
| | | | llvm-svn: 259299
* [BasicAA] Update on r259290 - added missing castGerolf Hoflehner2016-01-301-1/+1
| | | | llvm-svn: 259298
* AMDGPU: Fix emitting invalid workitem intrinsics for HSAMatt Arsenault2016-01-306-37/+550
| | | | | | | | | | | | | | | | | | The AMDGPUPromoteAlloca pass was emitting the read.local.size calls, which with HSA was incorrectly selected to reading from the offset mesa uses off of the kernarg pointer. Error on intrinsics which aren't supported by HSA, and start emitting the correct IR to read the workgroup size out of the dispatch pointer. Also initialize the pass so it can be tested with opt, and start moving towards not depending on the subtarget as an argument. Start emitting errors for the intrinsics not handled with HSA. llvm-svn: 259297
* AMDGPU: Stop checking intrinsics not used by HSA for dispatch-ptrMatt Arsenault2016-01-303-16/+175
| | | | | | | | Only the dispatch.ptr intrinsic is supposed to be used now to get the workgroup size, and the read.local.size intrinsics do not work correctly. llvm-svn: 259296
* InstCombine: fabs(x) * fabs(x) -> x * xMatt Arsenault2016-01-302-4/+44
| | | | llvm-svn: 259295
* [WebAssembly] Refine block placement to insert blocks between trees.Dan Gohman2016-01-302-9/+26
| | | | | | | | | Refine the test for whether an instruction is in an expression tree so that it detects when one tree ends and another begins, so we can place a block at that point, rather than continuing to find the first instruction not in a tree at all. llvm-svn: 259294
* AMDGPU: Add new amdgcn workitem intrinsicsMatt Arsenault2016-01-306-87/+189
| | | | | | | These use the correct prefix and follow the HSA naming convention rather than the config register option names. llvm-svn: 259293
* Remove references to *.h.in files and some autoconf hackeryJustin Bogner2016-01-304-33/+3
| | | | | | Missed this stuff in r259291. llvm-svn: 259292
* Remove *.h.in - these were only used by the autoconf build systemJustin Bogner2016-01-303-765/+0
| | | | llvm-svn: 259291
* [BasicAA] NFC - utility function for two's complement wrap-aroundGerolf Hoflehner2016-01-301-7/+15
| | | | llvm-svn: 259290
* test/clang-tidy/performance-for-range-copy.cpp: Appease for targeting ms mode.NAKAMURA Takumi2016-01-301-1/+1
| | | | llvm-svn: 259289
* [analyzer] Make suppression of macro defensive checks work with ↵Devin Coughlin2016-01-302-15/+46
| | | | | | | | | -analyzer-eagerly-assume. This is the default for the analyzer but the flag is added by the driver so our suppression tests didn't cover this case. llvm-svn: 259288
* [SemaCXX] Fix crash-on-invalid while trying to deduce return type of a lambda.Argyrios Kyrtzidis2016-01-302-4/+16
| | | | | | rdar://22032373 llvm-svn: 259287
* Further reduce test timeXinliang David Li2016-01-301-6/+2
| | | | llvm-svn: 259285
* Avoid overly large SmallPtrSet/SmallSetMatthias Braun2016-01-304-10/+4
| | | | | | | | | These sets perform linear searching in small mode so it is never a good idea to use SmallSize/N bigger than 32. Differential Revision: http://reviews.llvm.org/D16705 llvm-svn: 259284
* Avoid overly large SmallPtrSet/SmallSetMatthias Braun2016-01-3022-25/+25
| | | | | | | These sets perform linear searching in small mode so it is never a good idea to use SmallSize/N bigger than 32. llvm-svn: 259283
* Use Support/DataTypes.h instead of cstdintMatthias Braun2016-01-301-1/+1
| | | | llvm-svn: 259282
* [docs] Remove references to autoconf build.Alexey Samsonov2016-01-301-2/+1
| | | | llvm-svn: 259281
* [docs] Remove references to autotools build.Alexey Samsonov2016-01-305-352/+5
| | | | llvm-svn: 259280
* [CUDA] Die if we ask the NVPTX backend to emit a global ctor/dtor.Justin Lebar2016-01-304-0/+40
| | | | | | | | | | | | Summary: Previously we'd just silently skip these. Reviewers: tra, jholewinski Subscribers: llvm-commits, jhen, echristo, Differential Revision: http://reviews.llvm.org/D16739 llvm-svn: 259279
* Remove references to autotools build.Alexey Samsonov2016-01-302-4/+1
| | | | llvm-svn: 259278
* [CodeView] Properly handle empty line tablesDavid Majnemer2016-01-302-7/+89
| | | | | | | Don't crash when there are no appropriate line table entries for a given function. llvm-svn: 259277
* Move template instantiations to end of the file.Rui Ueyama2016-01-291-5/+5
| | | | llvm-svn: 259276
* 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
OpenPOWER on IntegriCloud