similar to: [LLVMdev] [lld] Subclassing LayoutPass

Displaying 20 results from an estimated 200 matches similar to: "[LLVMdev] [lld] Subclassing LayoutPass"

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,
2015 Feb 12
2
[LLVMdev] [lld] alias atoms and LayoutPass
Hi, It 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,
2014 Jul 10
2
[LLVMdev] [lld] LLD's software architecture (update)
Well, it does have a Registry& that's defined in Reader.h. But that can be forward declared (and apparently is in some of the other headers it includes. On Thu, Jul 10, 2014 at 12:08 PM, Andreas Wendleder < andreas.wendleder at googlemail.com> wrote: > Hi > > - passes depend on Reader and Writer >> > > That's an easy one. Compile tested on Windows with
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 <b.van.den.berg.nl at gmail.com> > a écrit : > > Well,
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
2014 Mar 21
2
[LLVMdev] LLD: Layout-after and layout-before
Thank you for quick responses! As to dead stripping, if dead stripping is the only pass we need bi-directional edges, we might want the dead stripping pass to construct internal data structure by reversing the graph to construct layout-before edges from layout-after edges. This should be less error prone than maintaining two reverse-directional edges throughout all passes. Of course it will make
2015 Jan 27
3
[LLVMdev] [lld] Overloaded Layout references
Hi, I think we are overloading the Layout references for garbage collection. If you are creating a reference (kindLayoutAfter) from A to B, that may not mean that you cannot garbage collect B for the 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)
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 the ELFPassFile doesnot get an ordinal value > assigned, as its
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
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 >
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
On Mon, Oct 7, 2013 at 11:51 AM, Shankar Easwaran <shankare at codeaurora.org>wrote: > 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 ? > That API may work, but I don't think you always want to assign the largest file ordinal for a file created in
2015 Sep 28
2
Parse Instruction
Hi all, in most of the architectures, assembly operands are comma-separated. I would like to parse an assembly code that is space-separated and I am having a bit of problem. In *ParseInstruction* function, I don't know what is the easiest way to figure out how many operands a mnemonic expected to have. In comma-separated assembly code, it just consuming commas (while
2015 Sep 28
3
Parse Instruction
Hi ES, From what I understand instruction parsing is divided into two parts: - Parsing an operand list (XXXAsmParser::ParseInstruction) - Turning the operand list into an actual instruction (XXXAsmParser::MatchAndEmitInstruction) The second part does the validation (e.g. how many operands, what kind, etc) while the first part only does the parsing. That's why I think in the first part
2012 Dec 06
2
[LLVMdev] subclassing MCELFStreamer
Hi Jim, Daniel, The last time the topic of subclassing MCELFStreamer came up, you both were helpful in identifying ways to handle the use case without requiring subclassing. Can you please take a look at the context below and let me know if you have any suggestions? For reference, this was posted to the list yesterday under the subject "sub-classing MCObjectStreamer?": > Okay,
2014 Mar 27
1
SPA112 provisioning file questions
Hi all, I've got a provisioning file that I use to configure Cisco SPA112's. I'm wanting to get this file to do 3 things for me. I want to turn T.38 on, Call forwarding off, and Call waiting, off for both lines. but it's not working. This is what I'm using to enable T.38 for line 1. <FAX_Enable_T38_1_>Yes</FAX_Enable_T38_1_>
2008 Dec 09
7
subclassing vs mixins, which one should be used?
Hey all, I have two models in my rails project that share a lot of traits. They each have the same 4 properties, and now I need to add 2-3 methods to each one that will be the same. In the spirit of DRY I am looking for a solution to write these methods only once. Both of these models already inherit from ActiveRecord . . . and I didn''t know if it was safe to just "whip up" a
2014 Mar 27
1
arm64 support
I am trying to generate the config and makefiles using ./autogen.sh on the mac but get the following error: Can't exec "aclocal": No such file or directory at /usr/local/share/autoconf/Autom4te/FileUtils.pm line 326. autoreconf: failed to run aclocal: No such file or directory How do I build opus from source? Am I missing some step? On Thu, Mar 27, 2014 at 11:29 AM, Vinay Nair
2014 Mar 27
4
[LLVMdev] Named register variables GNU-style
On 27 March 2014 15:30, Rafael Espíndola <rafael.espindola at gmail.com> wrote: > For global ones, it should also codegen every non inline asm to use an > llvm intrinsic (llvm.read_register/llvm.write_register for example). That's my idea, yes. I'm not sure how Clang would transform the named registers into the intrinsic, but something along the lines of: i8* @SP =
2014 Mar 26
3
[LLVMdev] [cfe-dev] computing a conservatively rounded square of a double
On 03/26/2014 11:36 AM, Geoffrey Irving wrote: > I am trying to compute conservative lower and upper bounds for the > square of a double. I have set the rounding mode to FE_UPWARDS > elsewhere, so the code is > > struct Interval { > double nlo, hi; > }; > > Interval inspect_singleton_sqr(const double x) { > Interval s; > s.nlo = x * -x; > s.hi = x *