- Mar 10, 2020
-
-
Erik Pilkington authored
Nobody needs these symbols, so there isn't any benefit in including them. This saves some code-size in Objective-C binaries. Partially reverts: https://reviews.llvm.org/D61454. rdar://56579760 Differential revision: https://reviews.llvm.org/D75491
-
Davide Italiano authored
-
Davide Italiano authored
-
Davide Italiano authored
-
Philip Reames authored
-
Jonathan Roelofs authored
-
Reid Kleckner authored
I noticed my links were a bit slower on Windows than usual. Reviewed By: thakis Differential Revision: https://reviews.llvm.org/D75774
-
Jonathan Roelofs authored
-
LLVM GN Syncbot authored
-
Jonathan Roelofs authored
Detects and fixes suspicious code like: `#include "foo.cpp"`. Inspired by: https://twitter.com/lefticus/status/1228458240364687360?s=20 https://reviews.llvm.org/D74669
-
Alexey Bataev authored
Implemented codegen for depobj modifier in depend clauses.
-
Jay Foad authored
Summary: Instruction variants like S_MOV_B32_term should have the same SchedRW class as the base instruction, S_MOV_B32. This probably doesn't make any difference in practice because as terminators, they'll always be scheduled at the end of a basic block, but it's simply more correct than giving them all the default SchedRW class of Write32Bit, which implies a VALU operation. Reviewers: rampitec, arsenm, nhaehnle Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D75860
-
Jonathan Roelofs authored
-
Sjoerd Meijer authored
Attempt to pacify windows bot where this failed: clang/test/CodeGen/vlt_to_pointer.c
-
Yaxun (Sam) Liu authored
HIP emits a device stub function for each kernel in host code. The HIP debugger requires device stub function to have a different unmangled name as the kernel. Currently the name of the device stub function is the mangled name with a postfix .stub. However, this does not work with the HIP debugger since the unmangled name is the same as the kernel. This patch adds prefix __device__stub__ to the unmangled name of the device stub before mangling, therefore the device stub function has a valid mangled name which is different than the device kernel name. The device side kernel name is kept unchanged. kernels with extern "C" also gets the prefix added to the corresponding device stub function. Differential Revision: https://reviews.llvm.org/D68578
-
Arthur Eubanks authored
SKD -> SDK
-
Arthur Eubanks authored
Summary: MSVC also warns on this: $ cat /tmp/a.c int f(void* p) { return (int) p; } $ cl /c /tmp/a.c C:/src/tmp/a.c(1): warning C4311: 'type cast': pointer truncation from 'void *' to 'int' Warnings originally added in https://reviews.llvm.org/D72231. Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75643 -
ahatanak authored
a tail call Previosly ARC optimizer removed the autoreleaseRV/retainRV pair in the following code, which caused the object returned by @something to be placed in the autorelease pool because the call to @something isn't a tail call: ``` %call = call i8* @something(...) %2 = call i8* @objc_retainAutoreleasedReturnValue(i8* %call) %3 = call i8* @objc_autoreleaseReturnValue(i8* %2) ret i8* %3 ``` Fix the bug by checking whether @something is a tail call. rdar://problem/59275894
-
Lei Zhang authored
Differential Revision: https://reviews.llvm.org/D75854
-
Matt Arsenault authored
Most importantly, this fixes ret i8. Also make sure to handle signext/zeroext for odd types > i32. Some of the corresponding argument passing fixes also need to be handled.
-
Sjoerd Meijer authored
After a first attempt to fix the test-suite failures, my first recommit caused the same failures again. I had updated CMakeList.txt files of tests that needed -fcommon, but it turns out that there are also Makefiles which are used by some bots, so I've updated these Makefiles now too. See the original commit message for more details on this change: 0a9fc923
-
Matt Arsenault authored
Interpret these as extending to the next multiple of 32-bits. This had no effect with i48 for example, which is really split into {i32, i16}, which should extend the high part. -
Fangrui Song authored
Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D75810
-
Krzysztof Parzyszek authored
-
Erich Keane authored
This adds infrastructure for a multiversioning whitelist, plus adds 'used' to the allowed list with 'target'. The behavior here mirrors the implementation in GCC, where 'used' only applies to the single declaration and doesn't apply to the ifunc or resolver. This is not being applied to cpu_dispatch and cpu_specific, since the rules are more complicated for cpu_specific, which emits multiple symbols. Additionally, the author isn't currently aware of uses in the wild of this combination, but is aware of a number of target+used combinations.
-
Matt Arsenault authored
Use a hack to only enable this for GlobalISel. Technically this also works with SelectionDAG, but the divergence selection isn't reliable enough and a few cases fail, but I have no desire to spend time writing the manual expansion code for it. The DAG actually does a better job since it catches using v_add_lshl_u32 in the mixed SGPR/VGPR cases.
-
Akira Hatanaka authored
RebuildLambdaScopeInfo Previously the type of the variable was being passed, which was causing clang to crash when a non-reference variable was captured by reference or a reference variable was captured by value by a lambda and a block nested inside the lambda body was referencing the variable. Original patch by JF Bastien. rdar://problem/47550338 Differential Revision: https://reviews.llvm.org/D58164
-
Cameron McInally authored
These tests should have been added with a5b22b76 in D73711. Differential Revision: https://reviews.llvm.org/D75767
-
Louis Dionne authored
-
Hubert Tong authored
Summary: As of the 2019 Cologne meeting, according to its minutes (N4826), N4818 is the draft of the Reflection TS. Reviewers: rsmith, aaron.ballman Reviewed By: aaron.ballman Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75524
-
Hubert Tong authored
Summary: The document covers the Clang implementation status of the "upcoming C++20 standard". Update the title to match. Reviewers: rsmith, aaron.ballman Reviewed By: aaron.ballman Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75523
-
Simon Pilgrim authored
If we don't need the upper subvector elements of the BLENDI node then use a smaller vector size. This causes a couple of minor regressions in insertelement-ones.ll which are more examples of PR26018; given how cheap allones generation is I don't consider that a showstopper, just an annoyance (and there's plenty of other poor codegen cases in that file).
-
Craig Topper authored
[X86] Teach combineToExtendBoolVectorInReg to create opportunities for using broadcast load instructions. If we're inserting a scalar that is smaller than the element size of the final VT, the value of the extra bits doesn't matter. Previously we any_extended in the scalar domain before inserting. This patch changes this to use a broadcast of the original scalar type and then a bitcast to the final type. This might enable the use of a broadcast load. This recovers regressions from 07d68c24 and 9fcd212e without relying on alignment of the load. Differential Revision: https://reviews.llvm.org/D75835
-
JF Bastien authored
Summary: As discussed in D75505, it's not particularly useful to change the type of a load to/from floating-point/integer because it's followed by a bitcast, and it might lead to surprising code generation. Check that this doesn't generally happen. Reviewers: lebedev.ri Subscribers: jkorous, dexonsmith, ributzka, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D75644
-
Jonathan Roelofs authored
-
Jonathan Coe authored
Summary: Do not use continuation indent for '[' in blocks in C# code. Reviewers: krasimir Reviewed By: krasimir Subscribers: cfe-commits Tags: #clang-format, #clang Differential Revision: https://reviews.llvm.org/D75747
-
LLVM GN Syncbot authored
-
Jeremy Stenglein authored
Differential Revision: https://reviews.llvm.org/D75768
-
Nikita Popov authored
If a call argument has the "returned" attribute, we can simplify the call to the value of that argument. The "-inst-simplify" pass already handled this for the constant integer argument case via known bits, which is invoked in SimplifyInstruction. However, non-constant (or non-int) arguments are not handled at all right now. This addresses one of the regressions from D75801. Differential Revision: https://reviews.llvm.org/D75815
-
Marcello Maggioni authored
Spiller.h had indentation that doesn't match LLVM guidelines. Fixing it Reviewers: qcolombet, arsenm Subscribers: MatzeB, wdng, hiraditya, llvm-commits, qcolombet Tags: #llvm Differential Revision: https://reviews.llvm.org/D75830
-