summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [lld][NFC] Use explicit --symbols instead of -t in tests using llvm-readelf.Jordan Rupprecht2018-11-064-5/+5
| | | | llvm-svn: 346260
* [X86] Add custom promotion of v2i8/v2i16 fp_to_sint to avoid over promotion ↵Craig Topper2018-11-063-89/+474
| | | | | | to v2i64 which would force scalarization. llvm-svn: 346259
* [sanitizer] Fix nolibc unittests broken by r346215Vitaly Buka2018-11-062-30/+36
| | | | | | | | Subscribers: kubamracek, krytarowski, fedor.sergeev, llvm-commits Differential Revision: https://reviews.llvm.org/D54163 llvm-svn: 346258
* [sanitizer] Add char **GetEnviron() on all other platformsVitaly Buka2018-11-066-3/+21
| | | | | | | | Subscribers: kubamracek, llvm-commits Differential Revision: https://reviews.llvm.org/D54165 llvm-svn: 346257
* [CodeExtractor] Do not extract calls to eh_typeid_for (PR39545)Vedant Kumar2018-11-062-3/+37
| | | | | | | | | | | The lowering for a call to eh_typeid_for changes when it's moved from one function to another. There are several proposals for fixing this issue in llvm.org/PR39545. Until some solution is in place, do not allow CodeExtractor to extract calls to eh_typeid_for, as that results in serious miscompilations. llvm-svn: 346256
* [CodeExtractor] Erase use-without-def debug intrinsics in parent funcVedant Kumar2018-11-062-0/+62
| | | | | | | | | | | When CodeExtractor moves instructions to a new function, debug intrinsics referring to those instructions within the parent function become invalid. This results in the same verifier failure which motivated r344545, about function-local metadata being used in the wrong function. llvm-svn: 346255
* LivePhysRegs/IfConversion: Change some types from unsigned to MCPhysReg; NFCMatthias Braun2018-11-067-30/+31
| | | | | | | | Change the type in a couple of lists and sets that only store physical registers from unsigned to MCPhysRegs. The later is only 16bits and saves us a bit of memory. llvm-svn: 346254
* [AArch64][GlobalISel] Simplify and autogenerate the legalizer testsVolkan Keles2018-11-0618-807/+365
| | | | llvm-svn: 346253
* [utils] Update SmallVector lldb formatter for r337514Justin Bogner2018-11-061-4/+2
| | | | | | | | SmallVector was changed to store a begin and a size rather than a begin and an end a while back. Update the formatter to look at the correct members. llvm-svn: 346252
* Reland r346166: [GlobalISel] Refactor the artifact combiner a bit by using ↵Volkan Keles2018-11-062-36/+76
| | | | | | | | | | MIPatternMatch It was causing a crash because we were trying to get the definition of a target register. Fixed the issue by adding a check and added a test case for that. llvm-svn: 346251
* Disable calls to *_finite and other glibc-only functions on Musl.Eli Friedman2018-11-063-6/+49
| | | | | | | | | Non-GNU environments don't have __finite_*, so treat them as unavailable. Differential Revision: https://reviews.llvm.org/D51282 llvm-svn: 346250
* [WebAssembly] Address review comments from r346248 [NFC]Derek Schuff2018-11-061-3/+4
| | | | llvm-svn: 346249
* [WebAssembly] Support creation and import of shared memoriesDerek Schuff2018-11-066-2/+39
| | | | | | | | | Used for WebAssembly threads proposal. Add a flag --shared-memory which sets the IS_SHARED bit in WasmLimits Differential Revision: https://reviews.llvm.org/D54130 llvm-svn: 346248
* [ObjectFile] Prefer reinterpret_cast<>Davide Italiano2018-11-061-2/+2
| | | | llvm-svn: 346247
* [WebAssembly] Add shared memory support to limits fieldDerek Schuff2018-11-064-1/+39
| | | | | | | | | | Support the IS_SHARED bit in the memory limits flag word. The compiler does not create object files with memory definitions, but the field is used by the linker. Differential Revision: https://reviews.llvm.org/D54131 llvm-svn: 346246
* [InstCombine] allow vector types for fcmp+fpext foldSanjay Patel2018-11-062-11/+10
| | | | llvm-svn: 346245
* [ObjectFileELF] Fix misaligned read/writes caught by UBSan.Davide Italiano2018-11-062-15/+23
| | | | llvm-svn: 346244
* [InstCombine] add vector test for fcmp+fpext; NFCSanjay Patel2018-11-061-8/+19
| | | | llvm-svn: 346243
* [InstCombine] propagate fast-math-flags when folding fcmp+fpext, part 2Sanjay Patel2018-11-062-4/+7
| | | | llvm-svn: 346242
* [InstCombine] rearrange code for fcmp+fpext; NFCISanjay Patel2018-11-061-29/+27
| | | | llvm-svn: 346241
* [InstCombine] propagate fast-math-flags when folding fcmp+fpextSanjay Patel2018-11-062-6/+8
| | | | llvm-svn: 346240
* [InstCombine] adjust tests to show dropping FMF; NFCSanjay Patel2018-11-061-2/+2
| | | | llvm-svn: 346239
* [InstCombine] propagate fast-math-flags when folding fcmp+fneg, part 2Sanjay Patel2018-11-062-4/+5
| | | | llvm-svn: 346238
* [benchmark] Disable exceptions in Microsoft STLElizabeth Andrews2018-11-062-0/+3
| | | | | | | | | | This patch disables exceptions in Microsoft STL when exception handling is not enabled in Benchmark project. It fixes Windows builds that were failing due to C4530 warnings thrown by MS STL. Differential Revision: https://reviews.llvm.org/D52998 llvm-svn: 346237
* [InstCombine] adjust tests to show dropping FMF; NFCSanjay Patel2018-11-061-4/+4
| | | | | | Also, remove some stale FIXME comments ( rL346234 ). llvm-svn: 346236
* [InstCombine] reduce code; NFCSanjay Patel2018-11-061-1/+1
| | | | llvm-svn: 346235
* [InstCombine] propagate fast-math-flags when folding fcmp+fnegSanjay Patel2018-11-062-13/+18
| | | | | | | | | | This is another part of solving PR39475: https://bugs.llvm.org/show_bug.cgi?id=39475 This might be enough to fix that particular issue, but as noted with the FIXME, we're still dropping FMF on other folds around here. llvm-svn: 346234
* CPlusPlusLanguage: Use new demangler API to implement type substitutionPavel Labath2018-11-062-62/+81
| | | | | | | | | | | | | | | | Summary: Now that llvm demangler supports more generic customization, we can implement type substitution directly on top of this API. This will allow us to remove the specialized hooks which were added to the demangler to support this use case. Reviewers: sgraenitz, erik.pilkington, JDevlieghere Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D54074 llvm-svn: 346233
* [InstCombine] add tests for FMF propagation failure; NFCSanjay Patel2018-11-061-0/+24
| | | | llvm-svn: 346232
* [CMake] Fix generation of exported targets in build directoryPhilip Pfaffe2018-11-061-2/+2
| | | | | | | | | | | | | | | | | | | | CMake generates the exports file wrongly if the CMAKE_BUILD_TYPE is unset for multi-configuration generators. The generated file lib/cmake/polly/PollyExports-all.cmake then contains: set_target_properties(LLVMPolly PROPERTIES IMPORTED_LOCATION_ my_build_dir/lib/LLVMPolly.so) set_target_properties(Polly PROPERTIES IMPORTED_LOCATION_ my_build_dir/lib/libPolly.a) This patch conditionalizes the underscore. Patch by: Marcin Copik Differential Revision: D53376 llvm-svn: 346231
* [mips] Support sigrie instructionSimon Atanasyan2018-11-069-1/+59
| | | | | | | | | The `sigrie` instruction signals a Reserved Instruction Exception. This patch adds support for assembling / disassembling the instruction. Differential Revision: http://reviews.llvm.org/D53861 llvm-svn: 346230
* Adapt UBSan integer truncation tests to NetBSDKamil Rytarowski2018-11-0610-198/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The NetBSD headers use internal indirect type for standard *int*_t definitions. The internal type is unrolled inside the sanitizer into e.g. __int32_t from int32_t. This symbol mangling causes pattern mismatch in the interger truncation tests as they expect exact types such as 'int32_t'. Change the pattern rules so every acceptable internal form of *int*_t will be accepted flawlessly. Reviewers: lebedev.ri, vitalybuka, joerg Reviewed By: lebedev.ri Subscribers: kubamracek, dmgreen, llvm-commits, mgorny, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D54150 llvm-svn: 346228
* [llvm-exegesis] Ignore X86 pseudo instructions.Clement Courbet2018-11-061-0/+3
| | | | | | | | | | | | Summary: They do not lower to actual MCInsts and have no scheduling info. Reviewers: gchatelet Subscribers: llvm-commits, tschuett Differential Revision: https://reviews.llvm.org/D54147 llvm-svn: 346227
* [X86][NFC] Fix comment.Clement Courbet2018-11-061-4/+4
| | | | llvm-svn: 346226
* [InstCombine] Ensure nested shifts are in range (OSS-Fuzz #9880)Simon Pilgrim2018-11-062-5/+25
| | | | llvm-svn: 346225
* [clangd] Deduplicate query scopes.Eric Liu2018-11-062-8/+23
| | | | | | | | | | | | | | Summary: For example, when anonymous namespace is present, duplicated namespaces might be generated for the enclosing namespace. Reviewers: ilya-biryukov Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D54105 llvm-svn: 346224
* [clangd] Get rid of QueryScopes.empty() == AnyScope special case.Eric Liu2018-11-067-7/+17
| | | | | | | | | | | | Reviewers: sammccall Reviewed By: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D53933 llvm-svn: 346223
* Prioritize the constructor call of __local_xray_dyninit()Kamil Rytarowski2018-11-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: For platforms without preinit support (such as NetBSD/amd64) the initialization routine __xray_init() was called in non-deterministic order compared to other constructors. This caused breakage failures as xray routines attempted to execute code with assumption of being initialized, which was no always true. Use GCC/Clang extension to set maximal priority to the constructor calling __xray_init(). This code switches away from C++ lambda form, as it did not allow to specify this compiler extension. Reviewers: dberris, joerg Reviewed By: dberris Subscribers: llvm-commits, mgorny, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D54136 llvm-svn: 346222
* [clangd] auto-index stores symbols per-file instead of per-TU.Eric Liu2018-11-0612-67/+363
| | | | | | | | | | | | | | | | | Summary: This allows us to deduplicate header symbols across TUs. File digests are collects when collecting symbols/refs. And the index store deduplicates file symbols based on the file digest. Reviewers: sammccall, hokein Reviewed By: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D53433 llvm-svn: 346221
* Add parens to silence warningBenjamin Kramer2018-11-061-1/+1
| | | | | | MSVCUndecoratedNameParser.cpp:25:36: warning: '&&' within '||' [-Wlogical-op-parentheses] llvm-svn: 346220
* [clang-tidy] run() doesn't update the SourceManager.Sam McCall2018-11-061-1/+3
| | | | | | | | | | | | | | | | | | | | Summary: By now the context's SourceManager is now initialized everywhere that ClangTidyCheck::registerMatcher() is called, so the call from run() seems entirely redundant, and indeed all the tests pass. This solves a problem with embedding clang-tidy: if using a DiagnosticsEngine which already has file state, re-setting its SourceManager (to the same value) causes an assertion. (There are other ways to solve this problem, but this is the simplest). Reviewers: hokein, alexfh Subscribers: xazax.hun, cfe-commits Differential Revision: https://reviews.llvm.org/D54061 llvm-svn: 346219
* [Support] Fix `warning: unknown pragma ignored` for mingw targetMartin Storsjo2018-11-061-0/+4
| | | | | | Differential Revision: https://reviews.llvm.org/D54133 llvm-svn: 346218
* [NFC] Turn collectTransitivePredecessors into a static functionMax Kazantsev2018-11-062-9/+5
| | | | llvm-svn: 346217
* T was unused on assertion disabled builds.Kadir Cetinkaya2018-11-061-5/+6
| | | | llvm-svn: 346216
* [sanitizer] Use AT_EXECFN in ReExec() if availableBenjamin Kramer2018-11-062-0/+27
| | | | | | | | | | execve("/proc/self/exe") will not work if the binary relies on $EXEC_ORIGIN in an rpath. Query AT_EXECFN instead, which will give the same string that the current binary was exec'd with. Differential Revision: https://reviews.llvm.org/D54113 llvm-svn: 346215
* [XRay] Update XRayRecord to support Custom/Typed EventsDean Michael Berris2018-11-0630-138/+214
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This change cuts across LLVM and compiler-rt to add support for rendering custom events in the XRayRecord type, to allow for including user-provided annotations in the output YAML (as raw bytes). This work enables us to add custom event and typed event records into the `llvm::xray::Trace` type for user-provided events. This can then be programmatically handled through the C++ API and can be included in some of the tooling as well. For now we support printing the raw data we encounter in the custom events in the converted output. Future work will allow us to start interpreting these custom and typed events through a yet-to-be-defined API for extending the trace analysis library. Reviewers: mboerger Subscribers: hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D54139 llvm-svn: 346214
* [PDB] Introduce `MSVCUndecoratedNameParser`Aleksandr Urakov2018-11-0611-123/+333
| | | | | | | | | | | | This patch introduces the simple MSVCUndecoratedNameParser. It is needed for parsing names of PDB symbols corresponding to template instantiations. For example, for the name `operator<<A>'::`2'::B::operator> we can't just split the name with :: (as it is implemented for now) to retrieve its scopes. This parser processes such names in a more correct way. Differential Revision: https://reviews.llvm.org/D52461 llvm-svn: 346213
* Cast to uint64_t instead of to unsigned.Akira Hatanaka2018-11-061-1/+1
| | | | | | This is a follow-up to r346211. llvm-svn: 346212
* os_log: Allow specifying mask type in format string.Akira Hatanaka2018-11-069-9/+73
| | | | | | | | | | A mask type is a 1 to 8-byte string that follows the "mask." annotation in the format string. This enables obfuscating data in the event the provided privacy level isn't enabled. rdar://problem/36756282 llvm-svn: 346211
* os_log: Add a new privacy annotation "sensitive".Akira Hatanaka2018-11-065-6/+33
| | | | | | | | | | This is a stricter privacy annotation than "private", which will be used for data that shouldn’t be logged to disk. For backward compatibility, the "private" bit is set too. rdar://problem/36755912 llvm-svn: 346210
OpenPOWER on IntegriCloud