summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* ARM & AArch64: combine implementation of vcaXYZ intrinsicsTim Northover2014-02-041-80/+24
| | | | | | | | Now that the back-end intrinsics are more regular, there's no need for the special handling these got in the front-end, so they can be moved to EmitCommonNeonBuiltinExpr. llvm-svn: 200769
* [CMake] add_clang_library(): Fix LLVM_PLUGIN_EXT in MODULE. It was broken ↵NAKAMURA Takumi2014-02-041-1/+1
| | | | | | since my r199902. llvm-svn: 200760
* [CMake] add_clang_library(): Honor STATIC.NAKAMURA Takumi2014-02-041-0/+2
| | | | llvm-svn: 200759
* Add implicit declarations of allocation functions when looking them up forRichard Smith2014-02-048-46/+62
| | | | | | | | redeclaration, not just when looking them up for a use -- we need the implicit declaration to appropriately check various properties of them (notably, whether they're deleted). llvm-svn: 200729
* Tidy up and reduce some comment redundancy.Richard Smith2014-02-031-34/+29
| | | | llvm-svn: 200723
* DebugInfo: Fix for an improvement to DIBuilder to not emit {i32 0} for ↵David Blaikie2014-02-032-2/+2
| | | | | | zero-length arrays. llvm-svn: 200722
* Fix a -Wmicrosoft warning about an unrepresentable enum valueReid Kleckner2014-02-031-1/+1
| | | | | | In MSVC, enums are always signed unless you explicitly specify the type. llvm-svn: 200719
* Fix a -Wformat warning in ASTUnit.cppReid Kleckner2014-02-031-2/+2
| | | | | | | | | | llvm::sys::cas_flag is 'long' instead of 'uint32_t' on win32, because that's what InterlockedIncrement is defined to accept. I still don't know if we should be calling fprintf from ASTUnit.cpp behind a getenv check. llvm-svn: 200718
* PR17846, PR17848: don't build a VarTemplateSpecializationDecl for a use of aRichard Smith2014-02-032-4/+43
| | | | | | variable template until we know what the template arguments actually are. llvm-svn: 200714
* [ms-cxxabi] Fix cast when structor replacement is an aliasReid Kleckner2014-02-033-6/+34
| | | | llvm-svn: 200711
* Allow specifying a custom PathDiagnosticConsumer for use with the static ↵Alexander Kornienko2014-02-033-24/+39
| | | | | | | | | | | | | | | | | analyzer. Summary: Make objects returned by CreateAnalysisConsumer expose an interface, that allows providing a custom PathDiagnosticConsumer, so that users can have raw data in a form easily usable from the code (unlike plist/HTML in a file). Reviewers: jordan_rose, krememek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2556 llvm-svn: 200710
* Test cases for NetBSD/eARM Joerg Sonnenberger2014-02-031-0/+74
| | | | llvm-svn: 200709
* ARM: implement support for crypto intrinsics in arm_neon.hTim Northover2014-02-035-130/+157
| | | | llvm-svn: 200708
* AArch64: use new non-polymorphic crypto intrinsicsTim Northover2014-02-031-14/+14
| | | | | | | The LLVM backend now has invariant types on the various crypto-intrinsics, because in all cases there's only really one interpretation. llvm-svn: 200707
* Fix handling of -fno-function-sections, -fno-data-sections in clang driver.Evgeniy Stepanov2014-02-032-2/+71
| | | | llvm-svn: 200685
* Fix typo 'uusal'.Richard Smith2014-02-031-2/+2
| | | | llvm-svn: 200681
* Fix typo in CSS class name.Richard Smith2014-02-031-2/+2
| | | | llvm-svn: 200680
* Clang 3.4 was released, make the boxes green.Richard Smith2014-02-031-11/+11
| | | | llvm-svn: 200679
* Tests for DR331-350.Richard Smith2014-02-032-16/+213
| | | | llvm-svn: 200678
* Update C++ DR page now 3.4 has been released.Richard Smith2014-02-032-7/+4
| | | | llvm-svn: 200674
* Implement DR329. We already did the right thing here in C++98 mode, but r104014Richard Smith2014-02-036-82/+40
| | | | | | (which implemented the DR) was disabled in C++11. llvm-svn: 200673
* Tests for DR321-330.Richard Smith2014-02-032-8/+93
| | | | llvm-svn: 200672
* Tests for DR301-320.Richard Smith2014-02-032-19/+238
| | | | llvm-svn: 200671
* MS ABI: Fix some layout testsDavid Majnemer2014-02-033-33/+32
| | | | | | | | | | | | Some lines intended to be used for testing x86_64 ABI compatibility were not firing because lines were annotated with the wrong FileCheck prefix: X64 vs x64 N.B. Changes beyond just changing x64 to X64 were made, presumably because other parts of the layout engine have changed. I've verified the changes to make sure that MSVC creates a compatible layout. llvm-svn: 200670
* Handle O32/N64 ABIs for NetBSD/MIPS64. From Matt Thomas.Joerg Sonnenberger2014-02-022-0/+23
| | | | llvm-svn: 200668
* Replace hasMipsN32ABIArg with hasMipsABIArg in preparation of o32/n64Joerg Sonnenberger2014-02-021-6/+6
| | | | | | support. llvm-svn: 200667
* Use a switch for the emulation handling.Joerg Sonnenberger2014-02-021-8/+10
| | | | llvm-svn: 200666
* Handle compat support for EABI/old APCS compatibility on NetBSD/ARM.Joerg Sonnenberger2014-02-022-1/+37
| | | | llvm-svn: 200665
* Replace hasMipsN32ABIArg by hasMipsABIArg to make it easier to addJoerg Sonnenberger2014-02-021-8/+8
| | | | | | support for o32 and n64. llvm-svn: 200662
* Pass down -mcpu for external assembler in thumb mode, too. From Matt Thomas.Joerg Sonnenberger2014-02-021-1/+2
| | | | llvm-svn: 200661
* Minor formatting improvement.Joerg Sonnenberger2014-02-021-2/+2
| | | | llvm-svn: 200659
* Test pre-defined macros of aarch64-netbsd.Joerg Sonnenberger2014-02-021-0/+100
| | | | llvm-svn: 200656
* NetBSD uses signed wchar_t on AArch64. It also wants __LITTLE_ENDIAN__ /Joerg Sonnenberger2014-02-021-0/+11
| | | | | | __BIG_ENDIAN__ as on other architectures. llvm-svn: 200655
* clang-format: Let chromium style inherit google style's javascript tweaks.Nico Weber2014-02-025-50/+35
| | | | llvm-svn: 200652
* [CMake] Move cmake_minimum_required(2.8.8) at the top.NAKAMURA Takumi2014-02-021-1/+2
| | | | | | Suggested by Stephen Kelly. llvm-svn: 200645
* clang/CMakeLists.txt: Untabify.NAKAMURA Takumi2014-02-021-12/+12
| | | | llvm-svn: 200643
* clang/lib/ASTMatchers/Dynamic/CMakeLists.txt: redundantNAKAMURA Takumi2014-02-021-4/+0
| | | | llvm-svn: 200642
* Sema: Reject templates in all extern "C" contexts.Benjamin Kramer2014-02-023-6/+14
| | | | | | | Otherwise we'd accept them if the LinkageDecl was not the direct parent DeclContext. PR17968. llvm-svn: 200641
* Report a correct end location for nameless parameters.Benjamin Kramer2014-02-029-21/+30
| | | | | | | | | | | | | | | Ranges before: void test(void (*)(int), int, float); ~~~~~~~~~~~~~ ~~~~ ~~~~~~ Ranges after: void test(void (*)(int), int, float); ~~~~~~~~~~~~~ ~~~ ~~~~~ This does not change the actual location of the ParmVarDecl, it still points to the location where the name would be. PR17970. llvm-svn: 200640
* Revert r200555, r200545.Evgeniy Stepanov2014-02-022-13/+0
| | | | | | | These changes make it impossible to use ARM EHABI for stack unwinding without enabling exceptions and break AddressSanitizer on ARM. llvm-svn: 200627
* [Sema] Follow-up on r200521 for the -Wnon-literal-null-conversion warning ↵Argyrios Kyrtzidis2014-02-022-15/+4
| | | | | | and revert its behavior for C++. llvm-svn: 200622
* Fix an assertion failure when building for the iOS simulator. rdar://15959009Bob Wilson2014-02-012-1/+9
| | | | | | | | | | | | | | When building for i386 or x86_64 with IPHONEOS_DEPLOYMENT_TARGET set in the environment, the toolchain correctly recognizes that the target platform is the iOS simulator. The code in Darwin::addMinVersionArgs was not updated for svn 197148, where isTargetIPhoneOS() was widely replaced by isTargetIOSBased(). This is kind of a strange case, though, because we probably ought to be passing -ios_simulator_version_min to the linker, but according to the FIXME in the code, we intentionally avoid that unless the -mios-simulator-version-min option was used. I don't know whether it is safe to change that yet, so for now, I am just fixing the assertion failure. llvm-svn: 200618
* Remove local type use in template.Reid Kleckner2014-02-011-1/+1
| | | | llvm-svn: 200598
* [ms-cxxabi] Use inalloca on win32 when passing non-trivial C++ objectsReid Kleckner2014-02-0117-128/+698
| | | | | | | | | | | | | | | | | | | When a non-trivial parameter is present, clang now gathers up all the parameters that lack inreg and puts them into a packed struct. MSVC always aligns each parameter to 4 bytes and no more, so this is a pretty simple struct to lay out. On win64, non-trivial records are passed indirectly. Prior to this change, clang was incorrectly using byval on win64. I'm able to self-host a working clang with this change and additional LLVM patches. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D2636 llvm-svn: 200597
* [ms-cxxabi] Use x86_cdeclmethodcc for __cdecl methods on win32Reid Kleckner2014-01-3113-98/+142
| | | | | | | | | | | | | | | | | | | This fixes PR15768, where the sret parameter and the 'this' parameter are in the wrong order. Instance methods compiled by MSVC never return records in registers, they always return indirectly through an sret pointer. That sret pointer always comes after the 'this' parameter, for both __cdecl and __thiscall methods. Unfortunately, the same is true for other calling conventions, so we'll have to change the overall approach here relatively soon. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D2664 llvm-svn: 200587
* [ms-cxxabi] Raise aggregate memptr alignment to 8 for x86_32Reid Kleckner2014-01-314-34/+147
| | | | | | | | | | | | | | | | With this change, we give different results for __alignof than MSVC, but our record layout is compatible. Some data member pointers also now have a size that is not a multiple of their alignment. Fixes PR18618. Reviewers: majnemer Differential Revision: http://llvm-reviews.chandlerc.com/D2669 llvm-svn: 200585
* Fix comment typo in test.Richard Smith2014-01-311-1/+3
| | | | llvm-svn: 200584
* Track the currently-being-built submodule inside the preprocessor (rather thanRichard Smith2014-01-314-39/+38
| | | | | | | just storing a flag indicating if there was one), and include it in the 'end of module' annotation. No functionality change. llvm-svn: 200573
* MS Intrin.h: implement __cpuidex and simplify __cpuidHans Wennborg2014-01-311-7/+7
| | | | | | | The two identical implementations of __cpuid for X86 / X86_64 were leftovers from my first iteration on the patch that implemented it. llvm-svn: 200568
* [CMake] arcmt-test: Reorganize link libraries with *actually referenced* ↵NAKAMURA Takumi2014-01-311-6/+3
| | | | | | | | libs from arcmt-test.cpp. arcmt-test doesn't depend on llvm codegen. llvm-svn: 200563
OpenPOWER on IntegriCloud