summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove unused variable.Eli Friedman2013-09-101-1/+0
| | | | llvm-svn: 190445
* getMostSpecialized for function template sets is never used in the context of aRichard Smith2013-09-104-8/+6
| | | | | | | call; remove its 'number of explicit arguments' and 'what kind of call' parameters. llvm-svn: 190444
* Add unused markings to suppress warnings.Eli Friedman2013-09-102-4/+10
| | | | | | | | | | trunk clang is a bit more aggressive about emitting unused-declaration warnings, so adjust some AST code to match. Specifically, use LLVM_ATTRIBUTE_UNUSED for declarations which are never supposed to be referenced, and turn references to declarations which are supposed to be referenced into odr-uses. llvm-svn: 190443
* Remove unused functions.Eli Friedman2013-09-105-55/+0
| | | | llvm-svn: 190442
* Ignore noreturn when checking function template specializationsReid Kleckner2013-09-102-2/+13
| | | | | | | | | | As requested when applying the same logic to calling conventions. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D1634 llvm-svn: 190441
* Hoist section call out of loop.Eric Christopher2013-09-101-2/+2
| | | | llvm-svn: 190440
* PR5683: Issue a warning when subtracting pointers to types of zero size, andRichard Smith2013-09-106-1/+86
| | | | | | | treat such subtractions as being non-constant. Patch by Serge Pavlov! With a few tweaks by me. llvm-svn: 190439
* Try to unbreak mingw32 buildbot.Rui Ueyama2013-09-101-2/+2
| | | | llvm-svn: 190438
* Fix regression from r190382.Eli Friedman2013-09-103-8/+18
| | | | | | | | | Make sure we perform the correct "referenced-but-not-used" check for static member constants. Fixes bug reported on cfe-commits by Alexey Samsonov. llvm-svn: 190437
* <rdar://problem/14071463>Enrico Granata2013-09-102-4/+4
| | | | | | The wrong method was being called in some instances here, causing class lookups to fail llvm-svn: 190436
* Fix cl-link.c test failure on Mac platformsHans Wennborg2013-09-101-2/+2
| | | | | | | The test filename (%s) is easily confused with an option when it starts with /Users... llvm-svn: 190435
* [ms-cxxabi] Mangle dynamic initializer stubs the same way MSVC doesReid Kleckner2013-09-105-11/+44
| | | | | | | | | | | | Summary: Dynamic initializers are mangled as ??__E <name> YAXXZ. Reviewers: timurrrr CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1477 llvm-svn: 190434
* Remove Windows line-endings in two clang-cl test files.Hans Wennborg2013-09-102-121/+121
| | | | llvm-svn: 190432
* Use llvm::sys::Process::GetEnv() instead of ::getenv().Rui Ueyama2013-09-101-6/+9
| | | | | | | Process::GetEnv() uses GetEnvironmentVariableW, which is a Windows API to get an environment variable and is preferable over getenv(). llvm-svn: 190431
* Fix build after SCEV changeMatt Arsenault2013-09-101-3/+5
| | | | llvm-svn: 190429
* clang-cl: Support building DLLs (PR17083)Hans Wennborg2013-09-106-15/+139
| | | | | | | | This adds driver support for building DLLs (the /LD and /LDd flags). It basically does two things: runtime selection and passing -dll and -implib to the linker. llvm-svn: 190428
* [ms-cxxabi] Implement guard variables for static initializationReid Kleckner2013-09-1020-57/+342
| | | | | | | | | | | | | | | | | | | | | | | | | | Static locals requiring initialization are not thread safe on Windows. Unfortunately, it's possible to create static locals that are actually externally visible with inline functions and templates. As a result, we have to implement an initialization guard scheme that is compatible with TUs built by MSVC, which makes thread safety prohibitively difficult. MSVC's scheme is that every function that requires a guard gets an i32 bitfield. Each static local is assigned a bit that indicates if it has been initialized, up to 32 bits, at which point a new bitfield is created. MSVC rejects inline functions with more than 32 static locals, and the externally visible mangling (?_B) only allows for one guard variable per function. On Eli's recommendation, I used MangleNumberingContext to track which bit each static corresponds to. Implements PR16888. Reviewers: rjmccall, eli.friedman Differential Revision: http://llvm-reviews.chandlerc.com/D1416 llvm-svn: 190427
* Fix missing CHECK-LABELsMatt Arsenault2013-09-101-5/+5
| | | | llvm-svn: 190426
* Teach ScalarEvolution about pointer address spacesMatt Arsenault2013-09-105-20/+101
| | | | llvm-svn: 190425
* Fix typoMatt Arsenault2013-09-101-1/+1
| | | | llvm-svn: 190424
* Add getenv() wrapper that works on multibyte environment variable.Rui Ueyama2013-09-106-56/+148
| | | | | | | | | | | | | | | | | | On Windows, character encoding of multibyte environment variable varies depending on settings. The only reliable way to handle it I think is to use GetEnvironmentVariableW(). GetEnvironmentVariableW() works on wchar_t string, which is on Windows UTF16 string. That's not ideal because we use UTF-8 as the internal encoding in LLVM. This patch defines a wrapper function which takes and returns UTF-8 string for GetEnvironmentVariableW(). The wrapper function does not do any conversion and just forwards the argument to getenv() on Unix. Differential Revision: http://llvm-reviews.chandlerc.com/D1612 llvm-svn: 190423
* LoopVectorize: PHI nodes are always at the beginning of a block, no need to ↵Benjamin Kramer2013-09-101-2/+2
| | | | | | scan the whole block. llvm-svn: 190422
* Debug Info: create scope children DIEs when the scope DIE is not null.Manman Ren2013-09-102-19/+54
| | | | | | | | | | | | | | | | We try to create the scope children DIEs after we create the scope DIE. But to avoid emitting empty lexical block DIE, we first check whether a scope DIE is going to be null, then create the scope children if it is not null. From the number of children, we decide whether to actually create the scope DIE. This patch also removes an early exit which checks for a special condition. It also removes deletion of un-used children DIEs that are generated because we used to generate children DIEs before the scope DIE. Deletion of un-used children DIEs may cause problem because we sometimes keep created DIEs in a member variable of a CU. llvm-svn: 190421
* ObjectiveC migrator: rename inferred isXXX property,Fariborz Jahanian2013-09-103-2/+4
| | | | | | with a suitable 'getter' attribute. llvm-svn: 190420
* cmake: Install llvm-tblgen againHans Wennborg2013-09-101-0/+4
| | | | | | | | | | | It was removed in r189130, but it turns out this makes life hard for folks packaging LLVM and Clang and building the latter based on the LLVM package. Note that this only adds back the LLVM tblgen, and it's obviously not included when LLVM_INSTALL_TOOLCHAIN_ONLY is set. llvm-svn: 190419
* Debug Info: define a DIRef template.Manman Ren2013-09-104-60/+88
| | | | | | | | | | | | | Specialize the constructors for DIRef<DIScope> and DIRef<DIType> to make sure the Value is indeed a scope ref and a type ref. Use DIScopeRef for DIScope::getContext and DIType::getContext and use DITypeRef for getContainingType and getClassType. DIScope::generateRef now returns a DIScopeRef instead of a "Value *" for readability and type safety. llvm-svn: 190418
* ARM: Use the PICADD opcode calculated.Jim Grosbach2013-09-101-2/+6
| | | | | | | | | | | | | | We were figuring out whether to use tPICADD or PICADD, then just using tPICADD unconditionally anyway. Oops. A testcase from someone familiar enough with ELF to produce one would be appreciated. The existing PIC testcase correctly verifies the .s generated, but that doesn't catch this bug, which only showed up in direct-to-object mode. http://llvm.org/bugs/show_bug.cgi?id=17180 llvm-svn: 190417
* test: Add @expectedFailureFreeBSD decoratorsEd Maste2013-09-104-0/+9
| | | | | | llvm.org/pr17184 expression interpreter fails for crash/assert tests llvm-svn: 190416
* test: Add @expectedFailureFreeBSD decoratorsEd Maste2013-09-102-0/+2
| | | | | | | http://llvm.org/pr17183 expression w/ varargs printf() fails http://llvm.org/pr15302 'anonymous namespace' prefix missing llvm-svn: 190415
* Fixup for r190410: use lazy initialization for symbolizer as some compilers ↵Alexey Samsonov2013-09-101-2/+12
| | | | | | emit global constructor to setup vptr llvm-svn: 190414
* Allow _clang-format as alternative to .clang-format config filenameHans Wennborg2013-09-107-9/+27
| | | | | | | | | | | Dotfiles are impractical on Windows. This makes clang-format search for the style configuration file as '_clang-format' in addition to the usual '.clang-format'. This is similar to how VIM searches for '_vimrc' on Windows. Differential Revision: http://llvm-reviews.chandlerc.com/D1629 llvm-svn: 190413
* Remove unused private member in ARMAsmPrinter.cpp.Logan Chien2013-09-101-1/+1
| | | | | | | This commit removes the unused "AttributeItem" from ObjectAttributeEmitter. llvm-svn: 190412
* [ASan] Remove the explicit function prototypes for intercepted functions on ↵Timur Iskhodzhanov2013-09-102-38/+5
| | | | | | Windows llvm-svn: 190411
* [Sanitizer] Refactor symbolization interface: use class instead of several ↵Alexey Samsonov2013-09-1026-866/+725
| | | | | | functions. Move some code around to get rid of extra source files llvm-svn: 190410
* Adding LZMA as dep for XML2 on 2.8.0 or higherRenato Golin2013-09-101-0/+14
| | | | | | | | | | | LibXML2 config doesn't specify lzma as a dependency, which breaks cross-compilation builds using new linkers (ld 2.21 or higher). There is a bug on libxml2 to fix that, but since it's going to take a while for things to go round and back, so we should have a harmless addition of the library until then. llvm-svn: 190409
* Don't divide L and #x in macro definitions. Fixes http://llvm.org/PR17144Alexander Kornienko2013-09-102-0/+3
| | | | | | | | | | | | Reviewers: djasper Reviewed By: djasper CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D1639 llvm-svn: 190408
* [asan] refactor the use-after-return API so that the size class is computed ↵Kostya Serebryany2013-09-101-10/+32
| | | | | | at compile time instead of at run-time. llvm part llvm-svn: 190407
* [asan] refactor the use-after-return API so that the size class is computed ↵Kostya Serebryany2013-09-106-77/+81
| | | | | | at compile time instead of at run-time. compiler-rt part llvm-svn: 190406
* Correctly calculate OriginalColumn after multi-line tokens.Alexander Kornienko2013-09-104-39/+55
| | | | | | | | | | | | | | Summary: This also unifies the handling of escaped newlines for all tokens. Reviewers: djasper Reviewed By: djasper CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D1638 llvm-svn: 190405
* [SystemZ] Update README.Richard Sandiford2013-09-101-9/+5
| | | | llvm-svn: 190404
* [msan] Make all pointers in msan_interface "const volatile void *".Evgeniy Stepanov2013-09-101-12/+13
| | | | | | This way msan annotations can be used with both normal and volatile memory. llvm-svn: 190403
* [msan] bool -> int to make msan_interface.h C-compatible.Evgeniy Stepanov2013-09-104-4/+4
| | | | llvm-svn: 190402
* clang-format: Understand function type typedefs with typeof.Daniel Jasper2013-09-102-0/+6
| | | | | | | | | | | Before: typedef typeof(int(int, int)) * MyFunc; After: typedef typeof(int(int, int)) *MyFunc; This fixes llvm.org/PR17178. llvm-svn: 190401
* [SystemZ] Add TM and TMYRichard Sandiford2013-09-108-14/+393
| | | | | | | | | | | | | | | | | | | | | | | The main complication here is that TM and TMY (the memory forms) set CC differently from the register forms. When the tested bits contain some 0s and some 1s, the register forms set CC to 1 or 2 based on the value the uppermost bit. The memory forms instead set CC to 1 regardless of the uppermost bit. Until now, I've tried to make it so that a branch never tests for an impossible CC value. E.g. NR only sets CC to 0 or 1, so branches on the result will only test for 0 or 1. Originally I'd tried to do the same thing for TM and TMY by using custom matching code in ISelDAGToDAG. That ended up being very ugly though, and would have meant duplicating some of the chain checks that the common isel code does. I've therefore gone for the simpler alternative of adding an extra operand to the TM DAG opcode to say whether a memory form would be OK. This means that the inverse of a "TM;JE" is "TM;JNE" rather than the more precise "TM;JNLE", just like the inverse of "TMLL;JE" is "TMLL;JNE". I suppose that's arguably less confusing though... llvm-svn: 190400
* [mips][msa] Removed unsupported dot product instructions (dotp_[su].b).Daniel Sanders2013-09-102-4/+0
| | | | | | The dotp_[su].b instructions never existed in any revision of the MSA spec. llvm-svn: 190399
* [mips][msa] Removed unsupported dot product instructions (dotp_[su].b)Daniel Sanders2013-09-103-56/+0
| | | | | | The dotp_[su].b instructions never existed in any revision of the MSA spec. llvm-svn: 190398
* Add test cases for Mips mthc1/mfhc1 instructions. Add check for odd value of ↵Vladimir Medic2013-09-102-0/+8
| | | | | | register when PFU is 32 bit. llvm-svn: 190397
* Remove obsolete code from MipsAsmParser.cpp.Vladimir Medic2013-09-101-22/+0
| | | | llvm-svn: 190396
* Calculate and store ColumnWidth instead of CodePointCount in FormatTokens.Alexander Kornienko2013-09-107-97/+109
| | | | | | | | | | | | | | | | Summary: This fixes various issues with mixed tabs and spaces handling, e.g. when realigning block comments. Reviewers: klimek, djasper Reviewed By: djasper CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1608 llvm-svn: 190395
* Delete unused static class membersAlexey Samsonov2013-09-101-2/+0
| | | | llvm-svn: 190394
OpenPOWER on IntegriCloud