summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Give the linker the right ELF type for SPARC targets.Jakob Stoklund Olesen2014-01-102-0/+16
| | | | llvm-svn: 198912
* Pass -32/-64 to the assembler when building for sparc/sparc64.Jakob Stoklund Olesen2014-01-102-0/+18
| | | | llvm-svn: 198911
* [Sparc] Emit retl/ret instead of jmp instruction. It improves the ↵Venkatraman Govindaraju2014-01-1011-46/+52
| | | | | | readability of the assembly generated. llvm-svn: 198910
* [Sparc] Add support for parsing jmpl instruction and make indirect call and ↵Venkatraman Govindaraju2014-01-107-22/+83
| | | | | | jmp instructions as aliases to jmpl. llvm-svn: 198909
* Revert "Revert r198851, "Prototype of skeleton type units for fission""David Blaikie2014-01-105-22/+68
| | | | | | | | | This reverts commit r198865 which reverts r198851. ASan identified a use-of-uninitialized of the DwarfTypeUnit::Ty variable in skeleton type units. llvm-svn: 198908
* [ms-abi] Handle __declspec(align) on bitfields "properly"Warren Hunt2014-01-102-26/+152
| | | | | | | | | | __declspec(align), when applied to bitfields affects their perferred alignment instead of their required alignment. We don't know why. Also, #pragma pack(n) turns packing *off* if n is greater than the pointer size. This is now observable because of the impact of declspec(align) on bitfields. llvm-svn: 198907
* CGRecordLayoutBuilder.cpp: Clarify if-else. [-Wdangling-else]NAKAMURA Takumi2014-01-101-1/+2
| | | | llvm-svn: 198906
* ObjectiveC. 1) Warn when @dynamic (as well as synthesize) Fariborz Jahanian2014-01-103-16/+20
| | | | | | | | | property has the naming convention that implies 'ownership'. 2) improve on diagnostic and make it property specific. 3) fix the line number in the case of default property synthesis. // rdar://15757510 llvm-svn: 198905
* Fix a bug with the ARM thumb2 CBNZ and CBNZ instructions thatKevin Enderby2014-01-102-1/+53
| | | | | | | | | branch to the next instruction. This can not be encoded but can be turned into a NOP. rdar://15062072 llvm-svn: 198904
* Reapply r198845, reverted in r198849, with a fix to make it valid C++98, notRichard Smith2014-01-102-84/+86
| | | | | | | | | | | just valid C++11 =) Original commit message: PR18427: Use an appropriately-aligned buffer in APValue, to avoid a crash on SPARC, where uint64_t apparently requires higher alignment than void*. llvm-svn: 198903
* Fixed an issue with the byte order of ports in KDP packets. Greg Clayton2014-01-101-6/+6
| | | | | | | | | | I previously fixed a bug in the SocketAddress class where SocketAddress::GetPort() wasn't using ntohs() on the port number in the structures. After fixing this, it broke places where we weren't using ntohs() and htons() correctly. <rdar://problem/15767514> llvm-svn: 198902
* Update the developer policy to more clearly spell out the steps forChandler Carruth2014-01-101-11/+27
| | | | | | | contributors to submit patches to the LLVM project. Thanks to Danny, Chris, Alp, and others for reviewing. llvm-svn: 198901
* [ms-abi] Fixing CGRecordLayoutBuilder w.r.t. MS NonVirutalBase LayoutWarren Hunt2014-01-093-7/+91
| | | | | | | | | | | | | | The MS abi lays out *all* non-virtual bases with leading vfptrs before laying out non-virutal bases without vfptrs. This guarantees that the primary base is laid out first. r198818 fixed RecordLayoutBuilder to produce compatiable layouts. This patch fixes CGRecordLayoutBuilder to be able to consume those layouts and produce meaningful output without tripping any asserts about assumed incoming layout. A test case is included that shows CGRecordLayoutBuilder in fact produces output in the compatiable order. llvm-svn: 198900
* Updating documentation for the __has_attribute changes landed in r198897.Aaron Ballman2014-01-092-2/+8
| | | | llvm-svn: 198899
* __has_attribute now understands target-specific attributes. So when you ask ↵Aaron Ballman2014-01-093-9/+56
| | | | | | whether an ARM target has the "interrupt" attribute, it will return true for ARM and MSP430 targets, and false for others. llvm-svn: 198897
* Removing the notion of TargetAttributesSema and replacing it with one where ↵Aaron Ballman2014-01-0911-378/+367
| | | | | | the parsed attributes are responsible for knowing their target-specific nature, instead of letting Sema figure it out. This is necessary so that __has_attribute can eventually determine whether a parsed attribute applies to the given target or not. llvm-svn: 198896
* Bitcode: Fix a typo in an assertJustin Bogner2014-01-091-1/+1
| | | | llvm-svn: 198894
* [Sparc] Multiclass for loads/stores. No functionality change intended.Venkatraman Govindaraju2014-01-092-140/+46
| | | | llvm-svn: 198893
* Fix ast-dump-color.cpp test following r198883Alp Toker2014-01-091-1/+1
| | | | | | The commit added a source location that used to be missing from the AST. llvm-svn: 198892
* Use getPointerSizeInBits.Rafael Espindola2014-01-091-2/+3
| | | | | | | I introduced this bug in 198815. Thanks for Mark Lacey for noticing. Unfortunately, I have no idea how to test this code. llvm-svn: 198891
* Preserve -fretain-comments-from-system-headers in modulesBen Langmuir2014-01-093-2/+9
| | | | | | | | Preserves the setting of -fretain-comments-from-system-headers when building/saving/loading module files. This allows code completion to pick up documentation comments from system modules. llvm-svn: 198890
* Clean up an inconsistency in v7s feature default.Evan Cheng2014-01-091-2/+2
| | | | llvm-svn: 198889
* Have attribute 'objc_precise_lifetime' suppress -Wunused.Ted Kremenek2014-01-092-1/+11
| | | | | | | | | | Fixes <rdar://problem/15596883> In ARC, __attribute__((objc_precise_lifetime)) guarantees that the object stored in it will survive to the end of the variable's formal lifetime. It is therefore useful even if it completely unused. llvm-svn: 198888
* Attempting to appease the build bots on systems with ansi escape sequences.Aaron Ballman2014-01-091-5/+8
| | | | llvm-svn: 198887
* Add a unit test for the copy constructor.Rafael Espindola2014-01-091-0/+3
| | | | | | | | I would not normally add tests like these, but the copy constructor is not used at all in our codebase with c++11, so having this tests might prevent breaking the c++03 build again. llvm-svn: 198886
* Revert "Disable LeakSanitizer in TableGen binaries, see PR18325"Alp Toker2014-01-091-7/+0
| | | | | | | | | | | To declare or define reserved identifers is undefined behaviour in standard C++. This needs to be addressed in compiler-rt before it can be used in LLVM. See the list discussion for details. This reverts commit r198858. llvm-svn: 198885
* Revert "Disable LeakSanitizer in TableGen binaries, see PR18325"Alp Toker2014-01-091-7/+0
| | | | | | | | | | | To declare or define reserved identifers is undefined behaviour in standard C++. This needs to be addressed in compiler-rt before it can be used in LLVM. See the list discussion for details. This reverts commit r198858. llvm-svn: 198884
* Removing a bit of custom parsing functionality used by the thread safety ↵Aaron Ballman2014-01-099-60/+80
| | | | | | analysis APIs. Now using tablegen to determine whether an attribute's arguments should be parsed in an unevaluated context instead of relying on a separate, hard-coded list of attributes. llvm-svn: 198883
* Document unsetting environment variables in the lldb/gdb cheat sheet.Jim Ingham2014-01-091-0/+10
| | | | llvm-svn: 198881
* Re-remove dead code.Nadav Rotem2014-01-092-59/+0
| | | | | | This reverts r198854. llvm-svn: 198879
* Fix PR18404 - 'Bug in regex_token_iterator::operator++(int) implementation'. ↵Marshall Clow2014-01-093-26/+142
| | | | | | Enhance the tests for regex_token_iterator and regex_iterator. llvm-svn: 198878
* Re-applied r198807, r198808 with an additional change to fix linking in ↵Alexander Kornienko2014-01-095-81/+124
| | | | | | configure Release+Asserts build. llvm-svn: 198875
* [asan] Implement max_redzone runtime flag.Evgeniy Stepanov2014-01-094-4/+39
| | | | llvm-svn: 198873
* Update example to be more idiomatic.Rafael Espindola2014-01-091-3/+2
| | | | llvm-svn: 198872
* clang-format: Add @s when breaking NSString literals.Daniel Jasper2014-01-093-4/+15
| | | | | | | | While it is allowed to not have an @ on subsequent lines, it seems general practice to add them. If undesired, the code author can easily remove them again and clang-format won't re-add them. llvm-svn: 198871
* clang-format: Understand #pragma markDaniel Jasper2014-01-092-0/+20
| | | | | | | | | Before: #pragma mark Any non - hyphenated or hyphenated string(including parentheses). After: #pragma mark Any non-hyphenated or hyphenated string (including parentheses). llvm-svn: 198870
* clang-format: Some tweaks to braces list formatting:Daniel Jasper2014-01-094-26/+66
| | | | | | | | | - Format a braced list with one element per line if it has nested braced lists. - Use a column layout only when the list has 6+ elements (instead of the current 4+ elements). llvm-svn: 198869
* The OpenCL specification states that images are allocated Pekka Jaaskelainen2014-01-093-10/+18
| | | | | | | | | | | from the global address space (6.5.1 of the OpenCL 1.2 specification). This makes clang construct the image arguments in the global address space and generate the argument metadata with the correct address space descriptor. Patch by Pedro Ferreira! llvm-svn: 198868
* check-clang: Add dependencies to PrintFunctionNames and ↵NAKAMURA Takumi2014-01-091-0/+2
| | | | | | SampleAnalyzerPlugin, for r198747 and r198820. llvm-svn: 198867
* Revert r198851, "Prototype of skeleton type units for fission"NAKAMURA Takumi2014-01-095-67/+22
| | | | | | It caused undefined behavior. DwarfTypeUnit::Ty might not be initialized properly, I guess. llvm-svn: 198865
* Fixed old typo in ScalarEvolution, that caused wrong SCEVs zext operation.Stepan Dyatkovskiy2014-01-092-1/+82
| | | | | | | | | Detailed description is here: http://llvm.org/bugs/show_bug.cgi?id=18000#c16 For participation in bugfix process special thanks to David Wiberg. llvm-svn: 198863
* [SystemZ] Fix RNSBG bug introduced by r197802Richard Sandiford2014-01-094-8/+43
| | | | | | | | The zext handling added in r197802 wasn't right for RNSBG. This patch restricts it to ROSBG, RXSBG and RISBG. (The tests for RISBG were added in r197802 since RISBG was the motivating example.) llvm-svn: 198862
* Handle masked rotate amountsRichard Sandiford2014-01-092-16/+144
| | | | | | | | | | | | | | At the moment we expect rotates to have the form: (or (shl X, Y), (shr X, Z)) where Y == bitsize(X) - Z or Z == bitsize(X) - Y. This form means that the (or ...) is undefined for Y == 0 or Z == 0. This undefinedness can be avoided by using Y == (C * bitsize(X) - Z) & (bitsize(X) - 1) or Z == (C * bitsize(X) - Y) & (bitsize(X) - 1) for any integer C (including 0, the most natural choice). llvm-svn: 198861
* Match the InstCombine form of rotates by X+CRichard Sandiford2014-01-092-12/+68
| | | | | | | | | | | | | | | | | InstCombine converts (sub 32, (add X, C)) into (sub 32-C, X), so a rotate left of a 32-bit Y by X+C could appear as either: (or (shl Y, (add X, C)), (shr Y, (sub 32, (add X, C)))) without InstCombine or: (or (shl Y, (add X, C)), (shr Y, (sub 32-C, X))) with it. We already matched the first form. This patch handles the second too. llvm-svn: 198860
* Remove IR/Writer.hTobias Grosser2014-01-097-16/+9
| | | | | | This should fix the buildbots. llvm-svn: 198859
* Disable LeakSanitizer in TableGen binaries, see PR18325Kostya Serebryany2014-01-092-0/+14
| | | | llvm-svn: 198858
* Fix leak in lib/CodeGen/CGException.cpp, PR18318Kostya Serebryany2014-01-092-0/+10
| | | | | | | | | | | | | | Summary: This fixes the leak described in http://llvm.org/bugs/show_bug.cgi?id=18318 Reviewers: chandlerc, dblaikie Reviewed By: chandlerc CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2474 llvm-svn: 198857
* In areVectorOperandsLaxBitCastable() allow bitcast between a vector and scalar.Argyrios Kyrtzidis2014-01-092-8/+24
| | | | | | rdar://15779837. llvm-svn: 198856
* [Mips] Reduce the number of type-casting calls.Simon Atanasyan2014-01-091-6/+7
| | | | llvm-svn: 198855
* Revert r198819 - "Remove dead code."Nadav Rotem2014-01-092-0/+59
| | | | llvm-svn: 198854
OpenPOWER on IntegriCloud