- Apr 02, 2020
-
-
Thomas Lively authored
Summary: The convention for the wasm_simd128.h intrinsics is to have the integer sign in the lane interpretation rather than as a suffix. This PR changes the names of the integer min, max, and avgr intrinsics to match this convention. Reviewers: aheejin Subscribers: dschuff, sbc100, jgravelle-google, sunfish, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D77185
-
Matt Arsenault authored
This wasn't respecting the flush mode based on the default, and also wasn't correctly handling the explicit -fno-cuda-flush-denormals-to-zero overriding the mode.
-
Matt Arsenault authored
I forgot to squash this into c9d65a48
-
MaheshRavishankar authored
spv.interface_var_abi attributes if it exists already. Differential Revision: https://reviews.llvm.org/D77195
-
Louis Dionne authored
-
Kazuaki Ishizaki authored
Differential Revision: https://reviews.llvm.org/D72339
-
- Apr 01, 2020
-
-
Arnold Schwaighofer authored
Summary: Swift would like to use clang's apis to emit protocol declarations. This commits adds the public API: ``` emitObjCProtocolObject(CodeGenModule &CGM, const ObjCProtocolDecl *p); ``` rdar://60888524 Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D77077
-
Louis Dionne authored
If a ShTest has for example another command in front of the test executable it wants to execute, ssh.py needs to properly translate the path of that test executable to the executable on the remote host. For example, running '%{exec} ! %t.exe', we can't assume that the test-executable is the first argument after '%{exec}'. -
Fangrui Song authored
Fixes https://bugs.llvm.org/show_bug.cgi?id=45313 Also fixes linkerscript/{at4.s,overlay.test} LMA address issues exposed by 011b7855. Related: D74297 This patch improves emulation of GNU ld's heuristics on the difference between the LMA and the VMA: https://sourceware.org/binutils/docs/ld/Output-Section-LMA.html#Output-Section-LMA New test linkerscript/lma-offset.s (based on at4.s) demonstrates some behaviors. Reviewed By: psmith Differential Revision: https://reviews.llvm.org/D76995
-
Artem Dergachev authored
OSSymbol objects are particular XNU OSObjects that aren't really reference-counted. Therefore you cannot do any harm by over- or under-releasing them.
-
Heejin Ahn authored
Summary: The previous code for determining the innermost region in CFGSort was not correct. We determine subregion relationship by domination of their headers, i.e., if region A's header dominates region B's header, B is a subregion of A. Previously we assumed that if a BB belongs to both a loop and an exception, the region with fewer number of BBs is the innermost one. This may not be true, because while WebAssemblyException contains BBs in all its subregions (loops or exceptions), MachineLoop may not, because MachineLoop does not contain BBs that don't have a path to its header even if they are dominated by its header. Loop header <---| | | Exception header | | \ | A B | | \ | | C | | | Loop latch | | | -------------| For example, in this CFG, the loop does not contain B and C, because they don't have a path back to the loops header. But for CFGSort we consider the exception here belongs to the loop and the exception should be a subregion of the loop and scheduled together. So here we should use `WE->contains(ML->getHeader())` (but not `ML->contains(WE->getHeader())`, for the stated region above). This also fixes some comments and deletes `Regions` vector in `RegionInfo` class, which was not used anywere. Reviewers: dschuff Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77181 -
Fangrui Song authored
When reporting an "undefined symbol" diagnostic: * We don't print @ for the reference. * We don't print @ or @@ for the definition. https://bugs.llvm.org/show_bug.cgi?id=45318 This can lead to confusing diagnostics: ``` // foo may be foo@v2 ld.lld: error: undefined symbol: foo >>> referenced by t1.o:(.text+0x1) // foo may be foo@v1 or foo@@v1 >>> did you mean: foo >>> defined in: t.so ``` There are 2 ways a symbol in symtab may get truncated: * A @@ definition may be truncated *early* by SymbolTable::insert(). The name ends with a '\0'. * A @ definition/reference may be truncated *later* by Symbol::parseSymbolVersion(). The name ends with a '@'. This patch detects the second case and improves the diagnostics. The first case is not improved but the second case is sufficient to make diagnostics not confusing. Reviewed By: ruiu Differential Revision: https://reviews.llvm.org/D76999
-
Georgii Rymar authored
We have scenarios when the logic of --elf-hash-histogram/--hash-symbols/--hash-table options might crash when given a broken hash table. This patch adds pre-checks for tables for these 3 options and provides test cases. Differential revision: https://reviews.llvm.org/D77147
-
Sylvestre Ledru authored
clagn-tidy/doc: Add a link to readability-static-accessed-through-instance from readability-convert-member-functions-to-static
-
Louis Dionne authored
-
Jessica Clarke authored
Summary: Currently, the comparison argument used for ATOMIC_CMP_XCHG is legalised with GetPromotedInteger, which leaves the upper bits of the value undefind. Since this is used for comparing in an LR/SC loop with a full-width comparison, we must sign extend it. We introduce a new getExtendForAtomicCmpSwapArg to complement getExtendForAtomicOps, since many targets have compare-and-swap instructions (or pseudos) that correctly handle an any-extend input, and the existing function determines the extension of the result, whereas we are concerned with the input. This is related to https://reviews.llvm.org/D58829, which solved the issue for ATOMIC_CMP_SWAP_WITH_SUCCESS, but not the simpler ATOMIC_CMP_SWAP. Reviewers: asb, lenary, efriedma Reviewed By: asb Subscribers: arichardson, hiraditya, rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, jfb, PkmX, jocewei, psnobl, benna, Jim, s.egerton, pzheng, sameer.abuasal, apazos, luismarques, evandro, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D74453
-
Puyan Lotfi authored
Prior to this change the clang interface stubs format resembled something ending with a symbol list like this: Symbols: a: { Type: Func } This was problematic because we didn't actually want a map format and also because we didn't like that an empty symbol list required "Symbols: {}". That is to say without the empty {} llvm-ifs would crash on an empty list. With this new format it is much more clear which field is the symbol name, and instead the [] that is used to express an empty symbol vector is optional, ie: Symbols: - { Name: a, Type: Func } or Symbols: [] or Symbols: This further diverges the format from existing llvm-elftapi. This is a good thing because although the format originally came from the same place, they are not the same in any way. Differential Revision: https://reviews.llvm.org/D76979 -
Tres Popp authored
Summary: This is to allow optimizations like loop invariant code motion to work on the ParallelOp. Additional small cleanup on the ForOp implementation of LoopLikeInterface and the test file of loop-invariant-code-motion. Differential Revision: https://reviews.llvm.org/D77128
-
scentini authored
-
Guillaume Chatelet authored
Summary: This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77218
-
Guillaume Chatelet authored
Summary: This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77217
-
Simon Pilgrim authored
-
Sergej Jaskiewicz authored
This aims to fix test failures on the following buildbots: - http://lab.llvm.org:8011/builders/llvm-clang-win-x-armv7l - http://lab.llvm.org:8011/builders/llvm-clang-win-x-aarch64 Differential Revision: https://reviews.llvm.org/D77190
-
Guillaume Chatelet authored
Summary: This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: arsenm, sdardis, nemanjai, jvesely, nhaehnle, hiraditya, kbarton, jrtc27, atanasyan, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77215
-
Kai Wang authored
Enable llvm-readobj to handle RISC-V ELF attribute sections. Differential Revision: https://reviews.llvm.org/D75833
-
Simon Pilgrim authored
-
Simon Pilgrim authored
-
Benjamin Kramer authored
llvm/lib/Target/ARM/MVEVPTBlockPass.cpp:175:37: error: unused variable 'BlockBeg' [-Werror,-Wunused-variable] MachineBasicBlock::instr_iterator BlockBeg = Iter; ^ -
Guillaume Chatelet authored
Summary: This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77212
-
diggerlin authored
SUMMARY: run clang format on the file llvm/include/llvm/MC/MCDirectives.h Reviewers: Jason liu Subscribers: rupprecht, seiyai,hiraditya Differential Revision: https://reviews.llvm.org/D77170
-
Simon Pilgrim authored
First step toward making use of canLowerByDroppingEvenElements to match chains of PACKSS/PACKUS for compaction shuffles. At the moment we still only match a single stage but the MatchPACK is now more general.
-
Simon Pilgrim authored
-
David Green authored
-
Guillaume Chatelet authored
Summary: Although it may look like non NFC it is. especially the MIRParser may set `0` to the MachineFrameInfo and MachineFunction, but they all deal with `Align` internally and assume that `0` means `1`. https://github.com/llvm/llvm-project/blob/93fc0ba145c2f9619d3174c95cacda5d4a0a2815/llvm/include/llvm/CodeGen/MachineFrameInfo.h#L483 This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77203
-
Kirill Bobyrev authored
Summary: VSCode tasks are updated to the latest supported versions: deprecated values are removed and replaced by their new counterparts. Reviewers: hokein Reviewed By: hokein Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D76595
-
Pierre-vh authored
This allows the MVE VPT Block insertion pass to remove VPNOTs in order to create more complex VPT blocks such as TE, TEET, TETE, etc. Differential Revision: https://reviews.llvm.org/D75993
-
Pierre-vh authored
VPTMaskValue was using the "instruction" encoding to represent the masks (= the same encoding as the one used by the instructions in an object file), but it is only used to build MCOperands, so it should use the MCOperand encoding of the masks, which is slightly different. Differential Revision: https://reviews.llvm.org/D76139
-
Muhammad Omair Javaid authored
Skip TestWatchpointCount.py for aarch64-linux to fix lldb aarch64 linux buildbot. http://lab.llvm.org:8011/builders/lldb-aarch64-ubuntu/
-
Raphael Isemann authored
-