bug-global
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gtags-cscope/global finds incorrect callers


From: Shigio YAMAGUCHI
Subject: Re: gtags-cscope/global finds incorrect callers
Date: Fri, 25 Sep 2015 08:08:08 +0900

Hello,
> I'm navigating through https://github.com/openrisc/llvm-or1k
...
> Fist and third results are incorrect. They are declarations of these functions and not the callers.

Could you show the source code in which the problem has occurred?
This mailing list is recorded in the archive. But we won't know whether
or not the external site exists tomorrow.

> Output also doesn't seem to show what method calls a searched method.
> Note: <<releaseSucc>> releaseSucc(SU, *I); It would be nice to have something like
> <<ScheduleDAGVLIW::releaseSuccessors(SUnit *SU)>> releaseSucc(SU, *I)

That's the present specification.
In cscope, ':cs f c' is 'Find functions calling this function:'.
But in gtags-cscope, it is 'Find locations calling this function:'.

Regards,
Shigio


2015-09-25 3:38 GMT+09:00 rail shafigulin <address@hidden>:
I've connected the GTAGS database to my Vim using
:cs add GTAGS
and set my cscope program to gtags-cscope using
:set cscopeprg=gtags-cscope
just like it is stated in the manual.

I've tried to do a caller search for releaseSucc using the following command
:cs f c releaseSucc

The output looked like the following:

llvm-or1k/include/llvm/CodeGen/MachineScheduler.h|335| <<releaseSucc>> void releaseSucc(SUnit *SU, SDep *SuccEdge);
llvm-or1k/lib/CodeGen/MachineScheduler.cpp|539| <<releaseSucc>> releaseSucc(SU, &*I);
llvm-or1k/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp|86| <<releaseSucc>> void releaseSucc(SUnit *SU, const SDep &D);
llvm-or1k/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp|146| <<releaseSucc>> releaseSucc(SU, *I);

Fist and third results are incorrect. They are declarations of these functions and not the callers.

Output also doesn't seem to show what method calls a searched method. Note: <<releaseSucc>> releaseSucc(SU, *I); It would be nice to have something like <<ScheduleDAGVLIW::releaseSuccessors(SUnit *SU)>> releaseSucc(SU, *I)


As an additional note:
It would be nice to give the global tool awareness what function callers are being search for. The result above demonstrates that search found two methods named releaseSucc, one from ScheduleDAGMI class (2nd result) and one from ScheduleDAGVLIW class (4th result). If a user could pass information to the global tool stating that the user is looking for callers of ScheduleDAGVLIW::rereleaseSucc(...) instead of a caller of <any class>::releaseSucc(...), I believe this would be a very good improvement of the tool.


_______________________________________________
Bug-global mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/bug-global




--
Shigio YAMAGUCHI <address@hidden>
PGP fingerprint: D1CB 0B89 B346 4AB6 5663  C4B6 3CA5 BBB3 57BE DDA3

reply via email to

[Prev in Thread] Current Thread [Next in Thread]