User Details
- User Since
- Dec 1 2019, 10:41 PM (199 w, 4 h)
Sep 30 2020
Updated full patch to solve "content not available" error.
Separate review created for test cases. (https://reviews.llvm.org/D88551)
Sep 15 2020
Sep 13 2020
Gentle Ping !!
Sep 11 2020
test53 and test55 has been removed.
@spatel it is also same for me. If I remove both the commutative matchers than I also get 0 test diffs.(change x_c_Xor with x_Xor and x_c_And with x_And)
Sep 10 2020
Test cases are tested and updated.
Sep 7 2020
@spatel test cases are updated as per your review comments. Thanks for this.
And these test cases were failing without this patch. So it means that patch is doing correct transformations.
Sep 3 2020
Hi All,
Sep 2 2020
Aug 29 2020
Removed unnecessary code.
Removed unnecessary code.
Addressed @xbolva00 review comments.
New pattern "~(A | B) | (A ^ B) -> ~(A & B)" and Test cases are added.
Aug 27 2020
Added new pattern "A ^ (~A & B) --> (A | B)" .
Aug 25 2020
Sorry for misunderstanding , I am also trying to address no debug location.
snippet shared above suggest the removal of this snippet from IRTransaltor.cpp
// We only emit constants into the entry block from here. To prevent jumpy // debug behaviour set the line to 0. if (const DebugLoc &DL = Inst.getDebugLoc()) EntryBuilder->setDebugLoc( DebugLoc::get(0, 0, DL.getScope(), DL.getInlinedAt())); else EntryBuilder->setDebugLoc(DebugLoc());
Have you ruled this out as a gdb bug/possible improvement?
Yes , Because Arm64 with selectionDAG works fine. and we can also prevent jumpy behavior by skipping the line number(By not setting to line number zero), this way we can correct Global-isel behavior too.
+ I am also writing about this behavior to gdb mailing list.
Aug 24 2020
Added more test cases.
Are you ok with this..?
Aug 22 2020
Addressed @xbolva00 review comments. Thanks
Addressed @xbolva00 review comments. Thanks
Addressed @lebedev.ri review comments.Thanks
Aug 21 2020
Aug 19 2020
Also possible it's not a bug at all & GlobalISel just ends up doing some optimization that does end up creating a necessary/correct line 0 at the start of the function where SelectionDAG/FastISel does not.
I would consider this to be more of a bug in GDB. Line 0 has a well-defined meaning in DWARF and stands for "no source location corresponds to this code". LLDB, for example, interprets line 0 as an indicator to skip over instructions and automatically steps over them when single-stepping through a program, since line 0 is not a meaningful place to stop. It might be worth talking to the GDB developers and ask them what they think about adding a similar feature to their handling of line 0. DWARF doesn't prescribe that that's how debuggers should behave, but I think it's a reasonable interpretation.
Aug 18 2020
The IRTranslator and Legalizer do not set the line number, they're supposed to just forward the line number it already has.
llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp:2183
Aug 17 2020
Aug 16 2020
PING??
Aug 14 2020
Aug 13 2020
I think I haven't quit understood what your goal is. Are you trying to avoid having the prologue end at line 0?
Yes, Also other line 0 too which is making incorrect debugging experience.
Aug 12 2020
PING?
Aug 11 2020
Issue is with Global-isel , So trying to handle issue in Legalizer. Also tested debugging behavior and it is fine.
Aug 10 2020
Jul 31 2020
Hi @riccibruno,
Address your review comment.Add please use
Name :- Jaydeep Chauhan
Mail id:- jaydeepchauhan1494@gmail.com
Thanks
Jul 30 2020
Hi @aaron.ballman ,
Address your review comments.
Thank you for accepting this. I don't have commit access please commit this.
Thanks.
Jul 29 2020
Address @aaron.ballman review comments.
I have added your test case that is passing as well.
This patch covers this scenario also.
Thanks @aaron.ballman
Jul 28 2020
Addressed @riccibruno comments.Thanks
Jul 27 2020
Jul 24 2020
Hi @aprantl , Thank you for reply.
Jul 23 2020
ping?
Jul 21 2020
Jul 16 2020
Jul 15 2020
Issue is with Global-isel and specific to AAarch64.
Jul 14 2020
Jul 9 2020
Apr 16 2020
Sure. Would you like me to use the email address you use on bugzilla as the commit author? If not, could you supply an address to use?
Thank you for accepting this. I don't have commit access please commit this.
Feb 5 2020
ping
Jan 27 2020
Jan 26 2020
Jan 22 2020
clang format source file added ,and removed unnecessary attribute from test case.
Jan 20 2020
Jan 19 2020
that still seems very surprising - this change is specifically intended to add more debug info, is it not? So do you have any ideas/theories as to why that's not showing up in the data?
Do you have any reason to believe these patches would reduce the size of the debug info? It seems like they only add more debug info, and don't remove anything - so we'd expect an increase in the size, certainly not a decrease. That means, to me, there's probably a mistake in the measurement somehow?
DW_AT_linkage_name attribute support added for global variable declaration.
Jan 15 2020
I'd be curious to the answer to David's questions. If the size increase is because of unused extern variables coming in from libc or something then it doesn't seem worth the cost.
Jan 12 2020
ping
Dec 21 2019
Am I reading this right that the data would suggest that enabling this feature /reduces/ the size of debug info sections? That doesn't sound right - can you explain why that would be the case? (perhaps the data is incorrect/it wasn't built with -fstandalone-debug?)
Dec 19 2019
Test case Added
@Jac1494 - have you made any measurements of the size increase of this change? Perhaps a self-host build of clang?
Dec 17 2019
Separate clang patch with test cases .
Dec 15 2019
Dec 12 2019
Dec 9 2019
For some real life case like below we need debuginfo for declaration of global extern variable .