summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Split up the ParseOptionalAttrs method into three different methods for eachBill Wendling2012-12-042-81/+122
| | | | | | | class of attributes. This makes it much easier to check for errors and to reuse the code. llvm-svn: 169336
* Fix a use-after-unmap bug in /proc/self/maps caching. The cached buffer was ↵Alexander Potapenko2012-12-041-1/+5
| | | | | | occasionally deleted in the MemoryMappingLayout destructor. llvm-svn: 169335
* LoopVectorizer: Increase the number of pointers that can be tested at ↵Nadav Rotem2012-12-041-1/+1
| | | | | | runtime. If we cant prove statically that the pointers are disjoint then we add the runtime check. llvm-svn: 169334
* Enable if-conversion during vectorization.Nadav Rotem2012-12-041-1/+1
| | | | llvm-svn: 169331
* Add -whole-archive around the ASan runtime archive in the link command.Chandler Carruth2012-12-042-4/+10
| | | | | | | | | | | This ensures that even though it comes first, we pick up its .o files. Note that if we can use this (or something similar / equivalent) on other platforms, we could potentially remove ReplaceOperatorsNewAndDelete from the ASan runtimes. We should probably do something similar for TSan and MSan as well. llvm-svn: 169328
* ARM custom lower ctpop for vector types. Patch by Pete Couperus.Evan Cheng2012-12-042-0/+308
| | | | llvm-svn: 169325
* Fix a bug in vectorization of if-converted reduction variables. If theNadav Rotem2012-12-042-14/+58
| | | | | | | reduction variable is not used outside the loop then we ran into an endless loop. This change checks if we found the original PHI. llvm-svn: 169324
* Speed up the AllocationOrder class a bit.Jakob Stoklund Olesen2012-12-043-25/+19
| | | | | | | Allow the central functions to be inlined, and use the argumentless isHint() function when possible. llvm-svn: 169319
* Alphabetize source files, just like they have been before.Ted Kremenek2012-12-041-1/+1
| | | | llvm-svn: 169318
* For rdar://12329730, last piece.Shuxin Yang2012-12-044-5/+34
| | | | | | | | | | | | | | | | | | | | | This change attempts to simplify (X^Y) -> X or Y in the user's context if we know that only bits from X or Y are demanded. A minimized case is provided bellow. This change will simplify "t>>16" into "var1 >>16". ============================================================= unsigned foo (unsigned val1, unsigned val2) { unsigned t = val1 ^ 1234; return (t >> 16) | t; // NOTE: t is used more than once. } ============================================================= Note that if the "t" were used only once, the expression would be finally optimized as well. However, with with this change, the optimization will take place earlier. Reviewed by Nadav, Thanks a lot! llvm-svn: 169317
* Fix comment in ABIMacOSX_i386::RegisterIsCalleeSaved to say thatJason Molenda2012-12-041-2/+10
| | | | | | | | these are the *non-volatile* registers on Darwin/i386, not the volatile registers. Recognize the sp, pc, fp generic reg names as well. llvm-svn: 169316
* Comment change made in r169304 as requested by Eric Christopher.David Blaikie2012-12-041-0/+2
| | | | llvm-svn: 169315
* Define store instructions with base+register offset addressing modeJyotsna Verma2012-12-041-352/+116
| | | | | | using multiclass. llvm-svn: 169314
* User isl sha commit id instead of the git tagTobias Grosser2012-12-041-1/+1
| | | | | | Apperently the git tag causes trouble in some scripts. llvm-svn: 169313
* Use the 'count' attribute to calculate the upper bound of an array.Bill Wendling2012-12-0423-39/+43
| | | | | | | | | The count attribute is more accurate with regards to the size of an array. It also obviates the upper bound attribute in the subrange. We can also better handle an unbound array by setting the count to -1 instead of the lower bound to 1 and upper bound to 0. llvm-svn: 169312
* Use the 'count' attribute to calculate the upper bound of an array.Bill Wendling2012-12-043-28/+11
| | | | | | | | | The count attribute is more accurate with regards to the size of an array. It also obviates the upper bound attribute in the subrange. We can also better handle an unbound array by setting the count to -1 instead of the lower bound to 1 and upper bound to 0. llvm-svn: 169311
* Currently, with -fsanitize=address, the driver appends libclang_rt.asan.a toMatt Beaumont-Gay2012-12-042-2/+16
| | | | | | | | | | | | | | | | the link command. This all works fine when the driver is also responsible for adding -lstdc++ to the link command. But, if -lstdc++ (or libstdc++.a, etc) is passed explicitly to the driver, the ASan runtime will appear in the link command after the standard library, leading to multiple-definition errors for the global 'operator new' and 'operator delete'. Fix this in a painfully simple way, by inserting libclang_rt.asan.a at the start of the link command instead of the end. If we need to do something more clever, we can walk the link command looking for something that resembles libstdc++ and insert libclang_rt.asan.a as late as possible, but the simple solution works for now. llvm-svn: 169310
* docs: Begin Sphinxification of docs/tutorial/Sean Silva2012-12-043-49/+38
| | | | llvm-svn: 169309
* docs: fixup legacy HTML linkSean Silva2012-12-041-2/+1
| | | | llvm-svn: 169308
* Testing C declarations embedded inFariborz Jahanian2012-12-042-0/+105
| | | | | | | | <declaration> tag of Comment XML and fixed a missing block literal printout as result of the testing. // rdar://12378714 llvm-svn: 169307
* Add library dependencies to the lld cmake build.Benjamin Kramer2012-12-047-0/+29
| | | | llvm-svn: 169306
* Reapply r160148 (reverted in r163570) fixing spurious breakpoints in modern GDBDavid Blaikie2012-12-042-1/+29
| | | | | | | | | | | | | | | | | This reapplies the fix for PR13303 now with more justification. Based on my execution of the GDB 7.5 test suite this results in: expected passes: 16101 -> 20890 (+30%) unexpected failures: 4826 -> 637 (-77%) There are 23 checks that used to pass and now fail. They are all in gdb.reverse. Investigating a few looks like they were accidentally passing due to extra breakpoints being set by this bug. They're generally due to the difference in end location between gcc and clang, the test suite is trying to set breakpoints on the closing '}' that clang doesn't associate with any instructions. llvm-svn: 169304
* Add missing destructors found with -Wnon-virtual-dtor.Daniel Jasper2012-12-042-0/+5
| | | | llvm-svn: 169303
* In the data formatters, if we know the resultSean Callanan2012-12-041-5/+2
| | | | | | | | | | | | type of an Objective-C selector, don't bother making the expression parser resolve it all over again. Just send the message straight to the object pointer as if it were an id, and cast the result. <rdar://problem/12799087> llvm-svn: 169300
* Cache the names for Objective-C classes if we knowSean Callanan2012-12-041-5/+5
| | | | | | | | | them while making our initial run through the Objective-C runtime's class tables. <rdar://problem/12799087> llvm-svn: 169299
* Mark TestConnectRemote.py as expected to fail on Linux due to bugzilla #14427Daniel Malea2012-12-041-0/+1
| | | | llvm-svn: 169295
* Remove a URL from codeEli Bendersky2012-12-041-1/+1
| | | | llvm-svn: 169293
* Adapt to LLVM commit 169291 which streamlines the usage of NaCl/NativeClientEli Bendersky2012-12-042-8/+8
| | | | | | in the triple. llvm-svn: 169292
* Make NaCl naming consistent. The triple OSType is called NaCl and is representedEli Bendersky2012-12-044-6/+6
| | | | | | | | | textually as NativeClient. Also added a link to the native client project for readers unfamiliar with it. A Clang patch will follow shortly. llvm-svn: 169291
* additional test for declaration tag of a class extension.Fariborz Jahanian2012-12-041-0/+15
| | | | | | // rdar://12378714 llvm-svn: 169289
* Add support for reduction variables when IF-conversion is enabled. Nadav Rotem2012-12-042-10/+71
| | | | llvm-svn: 169288
* Add patterns to define 'combine', 'tstbit', 'ct0/cl0' (count ↵Jyotsna Verma2012-12-043-17/+97
| | | | | | | | trailing/leading zeros) instructions. llvm-svn: 169287
* Error recovery part 2Alexander Kornienko2012-12-044-32/+70
| | | | | | | | | | | | | | Summary: Adds recovery for structural errors in clang-format. Reviewers: djasper Reviewed By: djasper CC: cfe-commits, silvas Differential Revision: http://llvm-reviews.chandlerc.com/D164 llvm-svn: 169286
* objective-c blocks: Consider padding due to alignmentFariborz Jahanian2012-12-045-6/+96
| | | | | | | after the fixed size block header when generating captured block variable info. // rdar://12773256 llvm-svn: 169285
* Add constant extender support to ALU32 instructions for V2.Jyotsna Verma2012-12-041-51/+79
| | | | llvm-svn: 169284
* A test in thid directory was not being run because lit.local.cfg didn'tEli Bendersky2012-12-041-1/+1
| | | | | | include .ll files. Fix that. llvm-svn: 169283
* Fix comment typo.Duncan Sands2012-12-041-1/+1
| | | | llvm-svn: 169282
* This patch introduces initial-exec model support for thread-local storageBill Schmidt2012-12-0418-16/+216
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on 64-bit PowerPC ELF. The patch includes code to handle external assembly and MC output with the integrated assembler. It intentionally does not support the "old" JIT. For the initial-exec TLS model, the ABI requires the following to calculate the address of external thread-local variable x: Code sequence Relocation Symbol ld 9,x@got@tprel(2) R_PPC64_GOT_TPREL16_DS x add 9,9,x@tls R_PPC64_TLS x The register 9 is arbitrary here. The linker will replace x@got@tprel with the offset relative to the thread pointer to the generated GOT entry for symbol x. It will replace x@tls with the thread-pointer register (13). The two test cases verify correct assembly output and relocation output as just described. PowerPC-specific selection node variants are added for the two instructions above: LD_GOT_TPREL and ADD_TLS. These are inserted when an initial-exec global variable is encountered by PPCTargetLowering::LowerGlobalTLSAddress(), and later lowered to machine instructions LDgotTPREL and ADD8TLS. LDgotTPREL is a pseudo that uses the same LDrs support added for medium code model's LDtocL, with a different relocation type. The rest of the processing is straightforward. llvm-svn: 169281
* Update release notes for NVPTXJustin Holewinski2012-12-041-1/+24
| | | | llvm-svn: 169280
* tsan: output thread namesDmitry Vyukov2012-12-047-4/+63
| | | | llvm-svn: 169279
* Clang-format error recovery part 1Alexander Kornienko2012-12-042-2/+28
| | | | | | | | | | Reviewers: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D163 llvm-svn: 169278
* c-index-test.c: Make C89-compliant.NAKAMURA Takumi2012-12-041-1/+2
| | | | llvm-svn: 169277
* libclang: Add a function to libclang for retrieving the bit width valueDmitri Gribenko2012-12-045-1/+70
| | | | | | Patch by Jyun-Yan You. llvm-svn: 169276
* [tsan] add a compile-time error for 64-bit-only supportKostya Serebryany2012-12-041-0/+4
| | | | llvm-svn: 169275
* Make parenthesis counting and aligning a bit saner.Daniel Jasper2012-12-041-40/+53
| | | | | Review: http://llvm-reviews.chandlerc.com/D162 llvm-svn: 169274
* tsan: make atomic operations atomic againDmitry Vyukov2012-12-042-28/+94
| | | | llvm-svn: 169273
* Enum formatting implementationAlexander Kornienko2012-12-042-27/+68
| | | | | | | | | | | | Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D161 llvm-svn: 169272
* Fix spelling I ran over while proof-reading tests.Manuel Klimek2012-12-041-1/+1
| | | | llvm-svn: 169271
* [tsan] test the allocator with CompactSizeClassMapKostya Serebryany2012-12-042-7/+18
| | | | llvm-svn: 169270
* Get rid of references to Tcl, DejagGNU, old test structure, discourage the useEli Bendersky2012-12-041-106/+57
| | | | | | of grep in favor of FileCheck, and other cleanups. llvm-svn: 169269
OpenPOWER on IntegriCloud