search for: brawn

Displaying 20 results from an estimated 28 matches for "brawn".

Did you mean: brain
2020 Apr 15
2
[ARM] Register pressure with -mthumb forces register reload before each call
On Wed, 15 Apr 2020 at 03:36, John Brawn <John.Brawn at arm.com> wrote: > > > Could you please point out what am I doing wrong in the patch ? > > It's because you're getting the function name by doing > callee->getName().str().c_str() > The str() call generates a temporary copy of the name which cea...
2018 Dec 05
3
Strange regalloc behaviour: one more available register causes much worse allocation
...a non-local interval causing the eviction chain (RAGreedy::splitCanCauseEvictionChain only considers the local interval for a single block, and it’s unclear to me how to make it handle a non-local interval). John From: Nirav Davé [mailto:niravd at google.com] Sent: 05 December 2018 17:14 To: John Brawn Cc: llvm-dev; nd Subject: Re: [llvm-dev] Strange regalloc behaviour: one more available register causes much worse allocation This has cropped up before in X86 (https://bugs.llvm.org/show_bug.cgi?id=26810 / https://reviews.llvm.org/rL316295), and there's at least a partial mitigation (I recent...
2017 Apr 06
2
Shipping LLVM.dll for the C API with the Windows installer.
...t does: For all *.lib files ina specific dir starting with LLVM call dumpbin.exe (tool from Visualstudio) and write all symbols with LLVM_ into a specific file 2017-04-05 20:40 GMT+02:00 Jakob Bornecrantz via llvm-dev < llvm-dev at lists.llvm.org>: > On Wed, Apr 5, 2017 at 5:20 PM, John Brawn <John.Brawn at arm.com> wrote: > > We already half-have this, the LLVM_BUILD_LLVM_C_DYLIB cmake option > builds > > a shared object which exports the llvm-c interface but it only works on > > Darwin. > > > > tools/llvm-shlib/CMakeLists.txt is where how this is...
2017 Jul 10
2
Shipping LLVM.dll for the C API with the Windows installer.
...io) and write all symbols with LLVM_ into a > specific > >> file > >> > >> > >> 2017-04-05 20:40 GMT+02:00 Jakob Bornecrantz via llvm-dev > >> <llvm-dev at lists.llvm.org>: > >>> > >>> On Wed, Apr 5, 2017 at 5:20 PM, John Brawn <John.Brawn at arm.com> wrote: > >>> > We already half-have this, the LLVM_BUILD_LLVM_C_DYLIB cmake option > >>> > builds > >>> > a shared object which exports the llvm-c interface but it only works > on > >>> > Darwin. > >&...
2017 Jul 06
0
Shipping LLVM.dll for the C API with the Windows installer.
...mpbin.exe >> (tool from Visualstudio) and write all symbols with LLVM_ into a specific >> file >> >> >> 2017-04-05 20:40 GMT+02:00 Jakob Bornecrantz via llvm-dev >> <llvm-dev at lists.llvm.org>: >>> >>> On Wed, Apr 5, 2017 at 5:20 PM, John Brawn <John.Brawn at arm.com> wrote: >>> > We already half-have this, the LLVM_BUILD_LLVM_C_DYLIB cmake option >>> > builds >>> > a shared object which exports the llvm-c interface but it only works on >>> > Darwin. >>> > >>> >...
2017 Apr 05
2
Shipping LLVM.dll for the C API with the Windows installer.
We already half-have this, the LLVM_BUILD_LLVM_C_DYLIB cmake option builds a shared object which exports the llvm-c interface but it only works on Darwin. tools/llvm-shlib/CMakeLists.txt is where how this is done is defined, and it looks like it does it by: * build LLVM.so * use nm+awk+sed to pick out the symbols starting with LLVM * build LLVM-C.so using a -reexport_library linker option
2017 Jul 10
0
Shipping LLVM.dll for the C API with the Windows installer.
...LVM_ into a >> specific >> >> file >> >> >> >> >> >> 2017-04-05 20:40 GMT+02:00 Jakob Bornecrantz via llvm-dev >> >> <llvm-dev at lists.llvm.org>: >> >>> >> >>> On Wed, Apr 5, 2017 at 5:20 PM, John Brawn <John.Brawn at arm.com> >> wrote: >> >>> > We already half-have this, the LLVM_BUILD_LLVM_C_DYLIB cmake option >> >>> > builds >> >>> > a shared object which exports the llvm-c interface but it only >> works on >> >&gt...
2016 Jan 14
4
RFC: non-temporal fencing in LLVM IR
I agree with Tim's assessment for ARM. That's interesting; I wasn't previously aware of that instruction. My understanding is that Alpha would have the same problem for normal loads. I'm all in favor of more systematic handling of the fences associated with x86 non-temporal accesses. AFAICT, nontemporal loads and stores seem to have different fencing rules on x86, none of them
2015 Oct 06
2
Extra space in LLVM_DEFINITIONS causes CMake 3.1 to fail
I made this change (not specifically changing from a list to a string, but changing from a hardcoded value to the value that was actually decided by cmake), and I checked that it works with cmake 2.8.12.2 which is the minimum version set in CMakeLists.txt. So if it doesn’t work with cmake 3.1/3.2 then that looks like something new that was introduced after 2.8.12.2. I’ll have a look at this
2019 Oct 15
2
Easy way to add common pass for optimization
Hi all, I wrote a compiler front end which generates IR codes, but due to the logic, the IR codes have a lot of instructions like unnecessary br jump, basic block creation, load instructions and expression which can be simplified. now I want to use built in passes to optimize the generated code, but after I read the tutorial: https://llvm.org/docs/tutorial/MyFirstLanguageFrontend, I found that I
2018 Nov 16
2
Help with a pass
Hi all, I was able to create a pass following [1]. Now goal is amend the pass and try to dump the call graph. I think I have properly amended the source extending my pass from CallGraphSCCPass but unfortunately every time I run it, it crashes. I tried with llvm-6 and llvm-7. I notice that if I change EP_EarlyAsPossible to anything else it does not crash but I don't see the expected string
2016 Aug 17
2
RFC: Move cmake shared files
The cmake files generated when building LLVM (including LLVMConfig.cmake) are to support cmake's find_package() [1] function. In the build dir the generated files are placed in <build-dir>/share/llvm/cmake. After install, in <prefix>/lib/llvm/share/llvm/cmake. CMake is not able to find them without a hint. CMake searches these paths on Unix: - <prefix>/lib/llvm/cmake -
2020 Apr 15
4
[ARM] Register pressure with -mthumb forces register reload before each call
...On Fri, 10 Apr 2020 at 04:22, Prathamesh Kulkarni <prathamesh.kulkarni at linaro.org> wrote: > > Hi John, > Thanks for the suggestions! I will start looking at adding > foldMemoryOperand to ARMInstrInfo. > > Thanks, > Prathamesh > > On Tue, 7 Apr 2020 at 23:55, John Brawn <John.Brawn at arm.com> wrote: > > > > If I'm understanding what's going on in this test correctly, what's happening is: > > * ARMTargetLowering::LowerCall prefers indirect calls when a function is called at least 3 times in minsize > > * In thumb 1 (with...
2016 Nov 28
2
Translation of custom attribute (defined for variables) from clang to llvm
...finity is an unsigned number, provided at time of variable declaration using custom attribute as shown below unsigned int Affinity=1; __attribute__((myCustomAttr(Affinity))) volatile unsigned int a = 5; Can you please guide me? Thanks in advance --- Naveed Ul Mustafa On 2016-11-25 14:20, John Brawn wrote: > If you want the clang attribute to have an effect on the LLVM IR that > is generated then you need to modify the relevant parts of > clang/lib/CodeGen to do whatever it is you want to do. For local > variables it looks like EmitAutoVarAlloca in CGDecl.cpp is possibly > what...
2016 Jan 13
2
RFC: non-temporal fencing in LLVM IR
On Wed, Jan 13, 2016 at 10:32 AM, John Brawn <John.Brawn at arm.com> wrote: > *What about non-x86 architectures?* > > > > Architectures such as ARMv8 support non-temporal instructions and require > barriers such as DMB nshld to order loads and DMB nshst to order stores. > > > > Even ARM's address-depen...
2018 Aug 14
3
[RFC] Delaying phi-to-select transformation until later in the pass pipeline
Summary ======= I'm planning on adjusting SimplifyCFG so that it doesn't turn two-entry phi nodes into selects until later in the pass pipeline, to give passes which can understand phis but not selects more opportunity to optimize. The thing I'm trying to do which made me think of doing this is described below, but from the benchmarking I've done it looks like this is overall a
2018 Aug 17
2
[RFC] Delaying phi-to-select transformation until later in the pass pipeline
...rly transform to select prevents optimization: >>> https://bugs.llvm.org/show_bug.cgi?id=36760 <https://bugs.llvm.org/show_bug.cgi?id=36760> >>> >>> Is that case affected by this patch? >>> >>> >>> On Tue, Aug 14, 2018 at 11:17 AM, John Brawn via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: >>> Summary >>> ======= >>> >>> I'm planning on adjusting SimplifyCFG so that it doesn't turn two-entry phi >>> nodes into selects until later in th...
2018 Aug 15
2
[RFC] Delaying phi-to-select transformation until later in the pass pipeline
...ss options vs. uniquely > named passes). > > Here's another motivating bug where early transform to select prevents > optimization: > https://bugs.llvm.org/show_bug.cgi?id=36760 > > Is that case affected by this patch? > > > On Tue, Aug 14, 2018 at 11:17 AM, John Brawn via llvm-dev > <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: > > Summary > ======= > > I'm planning on adjusting SimplifyCFG so that it doesn't turn > two-entry phi > nodes into selects until later in the pas...
2018 Dec 05
2
Strange regalloc behaviour: one more available register causes much worse allocation
Preamble -------- While working on an IR-level optimisation completely unrelated to register allocation I happened to trigger some really strange register allocator behaviour causing a large regression in bzip2 in spec2006. I've been trying to fix that regression before getting the optimisation patch committed, because I don't want to regress spec2006, but I'm basically fumbling in
2018 Apr 23
0
LLVM Weekly - #225, Apr 23rd 2018
...to join forces on Clangd development. They intend to contribute towards making Clangd faster, more capable, and more efficient. * Pavel Labath [suggests](http://lists.llvm.org/pipermail/lldb-dev/2018-April/013550.html) making use of LLD in LLDB tests in order to make them host independent. * John Brawn has shared an RFC on [making GVN (Global Value Numbering) able to visit the same block more than once](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122628.html). Daniel Berlin [suggests](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122656.html) that GVN might not be the right place fo...