search for: yuanfang

Displaying 20 results from an estimated 40 matches for "yuanfang".

2020 Jul 16
2
[RFC] Introducing classes for the codegen driven by new pass manager
On Wed, Jul 15, 2020 at 6:39 PM Chen, Yuanfang via llvm-dev <llvm-dev at lists.llvm.org> wrote: > Indeed, but there is a distinction about their position in the pipeline. We run opt & codegen pipeline separately, Why, though? Is there a reason why this inherently makes sense, or is it just a historical accident? At least to me it...
2020 Jul 15
3
[RFC] Introducing classes for the codegen driven by new pass manager
> On Jul 15, 2020, at 12:28, Chen, Yuanfang <Yuanfang.Chen at sony.com> wrote: > > In codegen with NPM, I've made all codegen passes (IR or MIR pass) to be only driven by `llc`. Both due to the way NPM registering pass (on-demand&dynamic instead of static initialization in Legacy PM), and reduce the confusion about which...
2020 Jul 21
3
[RFC] Introducing classes for the codegen driven by new pass manager
...created. This is very important for memory usage. I think the MachineOutliner being in the pipeline may create an exception to this. I think the initial version of retpoline used a ModulePass and that had to be changed to avoid excessive memory usage. ~Craig On Thu, Jul 16, 2020 at 5:01 PM Chen, Yuanfang via llvm-dev < llvm-dev at lists.llvm.org> wrote: > TBH, I don't know the history of this choice. Although it makes sense from > the debugging/testing point of view. We have IR / MIR difference so it > makes sense to have their own pipeline (yeah, MIR pipeline is prefixed with &...
2020 Jul 22
2
[RFC] Introducing classes for the codegen driven by new pass manager
Hi Matt, which analysis is this? ________________________________________ From: Matt Arsenault <whatmannerofburgeristhis at gmail.com> on behalf of Matt Arsenault <arsenm2 at gmail.com> Sent: Tuesday, July 21, 2020 12:02 PM To: Craig Topper Cc: Chen, Yuanfang; Nicolai Hähnle; llvm-dev at lists.llvm.org Subject: Re: [llvm-dev] [RFC] Introducing classes for the codegen driven by new pass manager > On Jul 21, 2020, at 14:53, Craig Topper <craig.topper at gmail.com> wrote: > > One thing I want to mention. I believe in the current legacy pa...
2020 Jun 02
2
Code coverage for member functions that are defined inside the class
...nline function? (there are hundreds of inline function methods which makes doing this manually hard) - Is there some function attribute such as [[instrument-for-coverage]] to say: I want this function to be instrumented no matter what the command switches are? If not, is it a good idea? Thanks, - Yuanfang
2020 Jul 14
3
[RFC] Introducing classes for the codegen driven by new pass manager
-Yuanfang > -----Original Message----- > From: Arthur Eubanks <aeubanks at google.com> > Sent: Monday, July 13, 2020 12:49 PM > To: Chen, Yuanfang <Yuanfang.Chen at sony.com> > Cc: LLVM Developers' List <llvm-dev at lists.llvm.org> > Subject: Re: [llvm-dev] [RFC] Intr...
2020 Sep 17
3
[NPM] Register target specific pass with opt
Hello LLVM community, I was trying to port a target specific loop transformation pass (HexagonVectorLoopCarriedReusePass) to the New Pass Manager. However, I could not figure out a way to register this pass with opt. I can see that llvm/lib/Passes/PassRegistry.def is the registry for target independent passes. Can anyone point me to an example/API which can help me in registering this pass so
2010 Apr 18
4
[LLVMdev] create two Twine object
...uot;request", entry_inst); // 5 with 1&2&3&5, everything work, but that's not what I want. I really can't figure out what is broken. I create everything new on the heap. Each alloca inst with its own Twine object on the heap. Could anyone help me out? Thanks a lot. yuanfang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100418/4e869648/attachment.html>
2015 May 28
2
[LLVMdev] PGO for macro expansion code
...his case. However the last field of DW_TAG_lexical_block ("Unique ID to identify blocks from a template function") is unique for all instances of scopes in G and GET_BIT. Can we use that to get better profile of hot and cold paths inside macro? If not, any workaround for now? Thank you. Yuanfang
2013 Dec 13
2
[LLVMdev] unconditional branch folding
Hello guys, Do we have a pass to do unconditional branch folding except the one in Codegen? I checked in the lib/Transforms/Scalar, did not see any promising one. thank you, yuanfang
2010 Apr 18
1
[LLVMdev] create two Twine object
...AllocaInst(StatusTy, Twine("status") + > Twine(varNum), entry_inst); > Instruction *sreqInst = new AllocaInst(ReqTy, Twine("request") + > Twine(varNum), entry_inst); > > > btw, your getVarNum() leaks. > > Eugene > > On Sun, Apr 18, 2010 at 5:55 AM, Yuanfang Chen <tabloid.adroit at gmail.com> wrote: >> I need to generate variables like >> status1, status2, status3, ...... >> request1, request2, request3, ...... >> this is my code, other unrelated detail are eliminated. >> static int varNum; >> static const char...
2015 May 28
0
[LLVMdev] PGO for macro expansion code
On 05/28/15 15:27, Yuanfang Chen wrote: > #define GET_BIT(lll) \ > // blah blah > > #define G(label1,label2) \ > { \ > // decent amount code \ > ... > while (1) { \ > GET_BIT(label2); \ > };...
2010 Apr 18
0
[LLVMdev] create two Twine object
...Num; ++varNum; Instruction *sstatusInst = new AllocaInst(StatusTy, Twine("status") + Twine(varNum), entry_inst); Instruction *sreqInst = new AllocaInst(ReqTy, Twine("request") + Twine(varNum), entry_inst); btw, your getVarNum() leaks. Eugene On Sun, Apr 18, 2010 at 5:55 AM, Yuanfang Chen <tabloid.adroit at gmail.com> wrote: > I need to generate variables like > status1, status2, status3, ...... > request1, request2, request3, ...... > this is my code, other unrelated detail are eliminated. > static int varNum; > static const char *getVarNum() { > ++v...
2019 Sep 30
3
Debugging LowerTypeTests in LLVM Using GDB
Hi, I am looking into Control-Flow Integrity for indirect function calls, implemented with jump tables. I want to step through the code that produces these jump tables in GDB. I have built clang and opt from source with debugging symbols. I believe this code lives in llvm/lib/Transforms/LowerTypeTests.cpp, but when I try to debug *opt* by running the command "run -lowertypetests cfi-icall.bc
2010 Apr 23
2
[LLVMdev] variable sized array
Hi all, just a quick question, in llvm::TargetData, uint64_t MemberOffsets[1]; // variable sized array! MemberOffsets has two elements, why it's variable sized ? yuanfang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100423/6e0d57a5/attachment.html>
2011 Nov 15
1
[LLVMdev] add pass to O2. use as "clang -O2 .."
...PassManagerBuilder::populateModulePassManager, and got assertion fail "void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI && "Expected required passes to be initialized"' failed." I can't figure out how to solve this? thanks for any inputs. yuanfang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111115/fd89ce69/attachment.html>
2014 Jan 24
2
[LLVMdev] byval attr for base+range parameters
...integer. I didn't find a comfortable way to specify that it's 'byval'. I need this to make argpromotion work. Right now I just create an alloca, load value into it, and specify this alloca(base+range) as parameter. Is it a missing feature or there is a solution already? thanks, yuanfang
2011 Jun 07
2
[LLVMdev] llvm-gfortran
...causing error. Error message is m_List.F90: In function 'exporttostring_': m_List.F90:925: error: conversion to non-scalar type requested I wonder if there any way I can get upgrade the gfortran part of llvm-gfortran? If any, I will go with that, otherwise I will try dragonegg. thank you yuanfang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110607/926d7bb3/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: m_List.F90 Type: application/octet-strea...
2020 Sep 07
2
New PM for target-specific pre-isel IR passes
Hi, Is there a mechanism in place to use the new pass manager with target-specific passes added (at the moment) via addIRPasses in TargetPassConfig? I did see any code related to that, did I miss something? Is it in plan? -- Krzysztof Parzyszek kparzysz at quicinc.com AI tools development
2020 Jun 25
2
Renaming passes
On Thu, Jun 25, 2020 at 9:59 AM Roman Lebedev <lebedev.ri at gmail.com> wrote: > On Thu, Jun 25, 2020 at 7:48 PM Arthur Eubanks via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > > > After talking with some NPM people, I believe the ultimate goal after > NPM is enabled by default is to only support `-passes=`, and remove support > for `-foo-pass`. > Hm,