Displaying 20 results from an estimated 6000 matches similar to: "Editing metadata"
2015 Oct 05
2
Editing metadata
This is about the best idea. There's no way to take the non-temporary md
nodes back to temporary.
-eric
On Mon, Oct 5, 2015 at 10:12 AM Robinson, Paul via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Abstractly, (I don't get inside this code as much as I should) debug info
> works on a translation-unit basis, not a function basis, so regenerating a
> single
2015 Oct 22
2
The future of LLVM's C APIs: Notes and BoF.
Yup that is quite similar to my use case, but in addition I use LLVM to JIT
as well from C using MCJIT.
I have a patch for a DIBuilder binding, but it does change the API a bit,
so depending on how this discussion goes, it can or cannot be added. It was
necessary as the current binding wrap all metadata in values, which is very
wasteful when dealing with a large amount of metadata. The breakage
2015 Aug 17
3
[LLVMdev] [RFC] Developer Policy for LLVM C API
On Sun, Aug 16, 2015 at 9:49 PM deadal nix <deadalnix at gmail.com> wrote:
> 2015-08-16 21:47 GMT-07:00 Eric Christopher <echristo at gmail.com>:
>
>>
>>
>> On Sun, Aug 16, 2015 at 6:45 PM deadal nix via llvm-dev <
>> llvm-dev at lists.llvm.org> wrote:
>>
>>> Chiming in with http://reviews.llvm.org/D10725
>>>
>>>
2014 Sep 21
4
[LLVMdev] Aggregate store/load optimization
Hi all,
One area where LLVM suck pretty badly is aggregate store and loads. clang
do not use them so there are not seen as important, and aren't handled
nicely. Other frontends work around the issue as it is not handled properly
and we ends up with some kind of chicken and egg issue.
I recently proposed a diff to be able to optimize load from aggregate
stores in GVN without great success.
2015 Aug 17
3
Aggregate load/stores
2015-08-17 11:26 GMT-07:00 Mehdi Amini <mehdi.amini at apple.com>:
> Hi,
>
> On Aug 17, 2015, at 12:13 AM, deadal nix via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>
>
> 2015-08-16 23:21 GMT-07:00 David Majnemer <david.majnemer at gmail.com>:
>
>>
>>
>> Because a solution which doesn't generalize is not a very powerful
2015 Aug 17
5
Aggregate load/stores
I've definitely "run into this problem", and I would very much love to
remove my kludges [that are incomplete, because I keep finding places where
I need to modify the code-gen to "fix" the same problem - this is probably
par for the course from a complete amateur compiler writer and someone that
has only spent the last 14 months working (as a hobby) with LLVM].
So whilst
2015 Aug 17
2
[LLVMdev] [RFC] Developer Policy for LLVM C API
On Sun, Aug 16, 2015 at 6:45 PM deadal nix via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Chiming in with http://reviews.llvm.org/D10725
>
> Being able to read and generate IR is at least some very basic thing we
> can agree on is needed. Can we get some testing for it ? Personally I don't
> really mind if this is going to be stable or not, but at least, having some
2014 Jul 08
2
[LLVMdev] LLVM commit 410f38e01597120b41e406ec1cea69127463f9e5
OK from what I understand, the DAG.getSExtOrTrunc(SetCC, DL, SelectVT) is
unecessary and the SelectVT is nto the right type (as it is called with
incorrect parameter).
Here is a patch so it won't generate a loop. I ran make check and it
doesn't look like anything is broken.
2014-07-07 11:36 GMT-07:00 Matt Arsenault <arsenm2 at gmail.com>:
>
> On Jul 5, 2014, at 7:14 PM,
2015 Aug 21
3
[RFC] Aggreate load/store, proposed plan
----- Original Message -----
> From: "deadal nix" <deadalnix at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Mehdi Amini" <mehdi.amini at apple.com>, "llvm-dev" <llvm-dev at lists.llvm.org>
> Sent: Friday, August 21, 2015 1:24:04 AM
> Subject: Re: [llvm-dev] [RFC] Aggreate load/store, proposed plan
>
2015 Aug 20
3
[RFC] Aggreate load/store, proposed plan
----- Original Message -----
> From: "Mehdi Amini via llvm-dev" <llvm-dev at lists.llvm.org>
> To: "deadal nix" <deadalnix at gmail.com>
> Cc: "llvm-dev" <llvm-dev at lists.llvm.org>
> Sent: Wednesday, August 19, 2015 7:24:28 PM
> Subject: Re: [llvm-dev] [RFC] Aggreate load/store, proposed plan
>
> Hi,
>
> To be sure,
2015 Aug 17
4
Aggregate load/stores
Even if I turn to -O0 [in other words, no optimisation passes at all], it
takes the same amount of time.
The time is spent in
12.94% lacsap lacsap [.]
llvm::SDNode::use_iterator::operator==
7.68% lacsap lacsap [.]
llvm::SDNode::use_iterator::operator*
7.53% lacsap lacsap [.]
llvm::SelectionDAG::ReplaceAllUsesOfValueWith
7.28% lacsap
2014 Jul 06
2
[LLVMdev] LLVM commit 410f38e01597120b41e406ec1cea69127463f9e5
OK, so in you case, you want DAG.getSExtOrTrunc(SetCC, DL, SelectVT) to
tunc the result from i64 to i32 on 64 bits targets, if I understand
correctly.
2 questions:
- Why not generating a selectcc node directly ? It avoid having to mess up
with intermediate values.
- Why calling getSetCCResultType(VT) ? VT is not the type of a parameter
of setcc, and this looks incorrect to me.
2014-07-05 0:34
2015 Aug 20
2
[RFC] Aggreate load/store, proposed plan
----- Original Message -----
> From: "deadal nix" <deadalnix at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Mehdi Amini" <mehdi.amini at apple.com>, "llvm-dev" <llvm-dev at lists.llvm.org>
> Sent: Thursday, August 20, 2015 4:09:17 PM
> Subject: Re: [llvm-dev] [RFC] Aggreate load/store, proposed plan
>
2014 Jul 08
2
[LLVMdev] LLVM commit 410f38e01597120b41e406ec1cea69127463f9e5
2014-07-08 12:11 GMT-07:00 Matt Arsenault <Matthew.Arsenault at amd.com>:
> On 07/07/2014 09:47 PM, deadal nix wrote:
>
> OK from what I understand, the DAG.getSExtOrTrunc(SetCC, DL, SelectVT)
> is unecessary and the SelectVT is nto the right type (as it is called with
> incorrect parameter).
>
> Here is a patch so it won't generate a loop. I ran make check and
2015 Aug 27
2
[LLVMdev] [RFC] Developer Policy for LLVM C API
On Aug 18, 2015, at 10:41 PM, deadal nix <deadalnix at gmail.com> wrote:
> Let's not get this die. The C API is too valuable to let this die.
>
> I propose the following plan:
> - Add tests for the current API. This will allow to make sure that everything works and would ensure that changes are made intentionally, nto accidentally.
> - For area that do not exist in the
2015 Aug 17
3
[LLVMdev] [RFC] Developer Policy for LLVM C API
On Sun, Aug 16, 2015 at 10:34 PM, deadal nix via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
>
> 2015-08-16 21:51 GMT-07:00 Eric Christopher <echristo at gmail.com>:
>>
>> The promise of stability. We don't promise that the C++ API will stay
>> stable.
>>
>
>
> Why was that promise be made in the first place ? Has it been made in the
>
2014 Jul 05
2
[LLVMdev] LLVM commit 410f38e01597120b41e406ec1cea69127463f9e5
Hi,
I'm working on a target which have a variable size for CC (the same size as
the arguments). As a result getSetCCResultType, return a variable size.
In this commit, at the line DAG.getSExtOrTrunc(SetCC, DL, SelectVT), on my
target, you end up generating the Node you are replacing, and so creating a
loop in the DAG, which give a whole new meaning to the A in the acronym.
Subsequent code
2015 Aug 20
2
[RFC] Aggreate load/store, proposed plan
It is pretty clear people need this. Let's get this moving.
I'll try to sum up the point that have been made and I'll try to address
them carefully.
1/ There is no good solution for large aggregates.
That is true. However, I don't think this is a reason to not address
smaller aggregates, as they appear to be needed. Realistically, the
proportion of aggregates that are very large
2015 Aug 18
2
Aggregate load/stores
deadal nix via llvm-dev wrote on Mon, 17 Aug 2015:
> OK, what about that plan :
>
> Slice the aggregate into a serie of valid loads/stores for non atomic ones.
> Use big scalar for atomic/volatile ones.
> Try to generate memcpy or memmove when possible ?
Are memcpy/memmove guaranteed to be handled inline, i.e., without a
call to libc? Or are there plans to do this in the context
2011 Jul 24
4
[LLVMdev] git
Lot of good points.
> Yep, switching to git would require a lot of work on the project
> maintainers' side. Commit hooks, setting up repositories, rewording
> policies in terms of the commands of the new tools, and that only to
> regain the status the project already has - [...]
All of which could be done on a mirror, with pushes to svn during the
transition. Once it can be