search for: layoutpass

Displaying 13 results from an estimated 13 matches for "layoutpass".

2014 Jul 10
2
[LLVMdev] [lld] LLD's software architecture (update)
...asy one. Compile tested on Windows with Cmake. > > Regards, > Andreas > > From 36855377f20b0492735339f36ed7c650a4c90624 Mon Sep 17 00:00:00 2001 > From: Andreas Wendleder <andreas.wendleder at gmail.com> > Date: Thu, 10 Jul 2014 10:58:32 +0100 > Subject: [PATCH] Remove LayoutPass dependency on ReaderWriter. > > It's not used anyway. > --- > include/lld/Passes/LayoutPass.h | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/include/lld/Passes/LayoutPass.h > b/include/lld/Passes/LayoutPass.h > index 3392480..ffb633d 100644 > --- a/includ...
2015 Jan 22
5
[LLVMdev] LLD: Simplify LayoutPass
In r226336 I shove off 1.2 seconds out of 9.8 seconds for lld to link lld. That's done by parallelizing archive member parsing. But I realized that was not the slowest pass. The single slowest pass in LLD is LayoutPass. Only sort() at the last of Layoutpass::perform takes about 3 seconds (one third of total execution time). It is because the comparison function passed to sort, compareAtoms, does too much stuff. It looks to me that the entire pass is overkill. We don't really need that complexity there. I thi...
2014 Jul 10
2
[LLVMdev] [lld] LLD's software architecture (update)
Yes, but if you look in LayoutPasses.c, it calls registry.referenceKindToString(..), so it does need the definition.. On Thu, Jul 10, 2014 at 2:30 PM, Jean-Daniel Dupas <mailing at xenonium.com> wrote: > Using forward-declaration would not fix the layer violation. > > Le 10 juil. 2014 à 13:10, Bas van den Berg <...
2015 Feb 12
2
[LLVMdev] [lld] alias atoms and LayoutPass
...looks like the COFF reader creates an Alias atom by adding a kindLayoutAfter reference to the target atom. Now since the kindLayoutAfter passes are moved to machO how does it still work ? Does it work by chance because of ordinals ? I would think moving kindLayoutAfter references and having the LayoutPass would be a better choice. Shankar Easwaran -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by the Linux Foundation
2014 Jul 10
2
[LLVMdev] [lld] LLD's software architecture (update)
I've run a new scan of LLD's architecture and it appears to be getting cleaner! There are still some upward dependencies however: - core depends on Reader and Writer - passes depend on Reader and Writer - ReaderWriter/PECOFF/ReaderCOFF.cpp depends on Driver.h The updated architecture can be seen here: http://www.c2lang.org/docs/lld_architecture_20140710.png On Tue, Jun 3, 2014 at 3:07
2014 Mar 27
2
[LLVMdev] [lld] Subclassing LayoutPass
Hi, I think it would be great if we could subclass the LayoutPass. All the generic functionality could be in the parent to run the layout-after/in-group/ and currently the layout-before passes(until it gets removed). Flavors can *choose to run the layout passes* that they use and determine the way things get ordered in the layout pass. The compare function...
2014 Mar 21
3
[LLVMdev] LLD: Layout-after and layout-before
+llvmdev On Fri, Mar 21, 2014 at 3:43 PM, Rui Ueyama <ruiu at google.com> wrote: > Hi all, > > I'm trying to debug an issue that LLD sometimes get into an infinite loop > in setChainRoot() in LayoutPass.cpp. It looks like the cause is either > buildPrecededByTable() handles layoutBefore edges in a wrong way or we > construct a contradictory layout-before/layout-after graph. > > At this point I started thinking that I'm wasting time on data structure > that's more complicated...
2014 Mar 21
2
[LLVMdev] LLD: Layout-after and layout-before
...t; On 3/21/2014 5:45 PM, Rui Ueyama wrote: > > +llvmdev > > On Fri, Mar 21, 2014 at 3:43 PM, Rui Ueyama <ruiu at google.com> wrote: > >> Hi all, >> >> I'm trying to debug an issue that LLD sometimes get into an infinite >> loop in setChainRoot() in LayoutPass.cpp. It looks like the cause is either >> buildPrecededByTable() handles layoutBefore edges in a wrong way or we >> construct a contradictory layout-before/layout-after graph. >> >> At this point I started thinking that I'm wasting time on data >> structure that...
2015 Jan 27
3
[LLVMdev] [lld] Overloaded Layout references
...end user. My thought on Layout references was that it only guarantees that atoms appear in Layout reference order. Why are we overloading this for Garbage collection (aside from saving space/code) ? We should create kindLive (or) some better name IMO for Garbage collection. With this the complex LayoutPass can be optional and would be meant only for users that need the LayoutReferences to specify layout of the image. We could come up with a simpler pass for Layout(to sort atoms by file ordinal). What do you think ? Shankar Easwaran -- Qualcomm Innovation Center, Inc. is a member of Code Aurora F...
2013 Oct 07
2
[LLVMdev] [lld][failing test] the reason of ifunc.test failing
Hi, It looks like the the ELFPassFile doesnot get an ordinal value assigned, as its added in a pass. Is there a way to assign a file ordinal for the files added by Passes ? Till that time, I am going to XFAIL the ifunc test. More tests should fail, and am not sure why they are not failing. Thanks Shankar Easwaran -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
2013 Oct 07
0
[LLVMdev] [lld][failing test] the reason of ifunc.test failing
In addition I think the LayoutPass std::stable_sort be replaced with std::sort as total ordering is guaranteed as each File would get an ordinal and each atom would get an ordinal too, after the below problem is fixed. Thanks Shankar Easwaran On 10/6/2013 10:54 PM, Shankar Easwaran wrote: > Hi, > > It looks like the t...
2013 Oct 07
2
[LLVMdev] [lld][failing test] the reason of ifunc.test failing
Ping ? Do you think that we need to have an API in LinkingContext to return the next ordinal available, so that files created by passes can be assigned ordinals ? Thanks Shankar Easwaran On 10/6/2013 11:07 PM, Shankar Easwaran wrote: > In addition I think the LayoutPass std::stable_sort be replaced with > std::sort as total ordering is guaranteed as each File would get an > ordinal and each atom would get an ordinal too, after the below > problem is fixed. > > Thanks > > Shankar Easwaran > > On 10/6/2013 10:54 PM, Shankar Easwaran wro...
2013 Oct 07
0
[LLVMdev] [lld][failing test] the reason of ifunc.test failing
...to assign the largest file ordinal for a file created in a pass. If you want to assign the smallest file ordinal, for example, then the API wouldn't work. > Thanks > > Shankar Easwaran > > > On 10/6/2013 11:07 PM, Shankar Easwaran wrote: > >> In addition I think the LayoutPass std::stable_sort be replaced with >> std::sort as total ordering is guaranteed as each File would get an ordinal >> and each atom would get an ordinal too, after the below problem is fixed. >> >> Thanks >> >> Shankar Easwaran >> >> On 10/6/2013 10:54...