Displaying 6 results from an estimated 6 matches for "r_pc".
2007 Jan 21
3
ustack() wrong in pid return probes?
...t d(). However, there is this comment and code
in fasttrap_isa.c :
/*
* Set the program counter to the address of the traced
* instruction so that it looks right in ustack()
* output. We had previously set it to the end of the
* instruction to simplify %rip-relative addressing.
*/
rp->r_pc = pc;
Is this correct? It seems like the correct ustack()
output would be if the pc was set to "new_pc". Does that break
invariants elsewhere in the code?
I''ve included a ustackTest.c & ustack.d that demonstrates
what I''m seeing.
James M
---------------------...
2007 Mar 09
4
USDT probe issues in C++
...t 2
levels of the stack, but what I''d like to be able to do is aggregate on
the 2nd level entry up in the stack. Doesn''t appear to be a way to get a
string back out of the ustack for an arbitrary call level that I could
then put into an aggregation. Tried using the ufunc(uregs[R_PC]) but
that''s just giving me the same as probefunc and in a form I can''t seem
to print out in a composite aggregate.
stack:
layout-start
trace-layout-entry() [extern C wrapper func]
<C++ function from which trace-layout-entry() is being called and whose
name we''d li...
2017 Sep 19
1
Do I need to modify the AddrLoc of LLD for ARC target?
...-mthumb (I think).
I'm not able to explain what you are seeing in your print out as it
doesn't quite match the map file. Looking at your source diff I think
I may have found a bug:
uint64_t AddrLoc = getOutputSection()->Addr + Offset;
RelExpr Expr = Rel.Expr;
+ if ((Expr == R_PC || Expr == R_GOT_PC) &&
+ (Config->EMachine == EM_ARC_COMPACT ||
+ Config->EMachine == EM_ARC_COMPACT2)) {
+ uint64_t M = 0;
+ if (Type == R_ARC_32_PCREL || Type == R_ARC_PC32 ||
+ Type == R_ARC_GOTPC32 || Type == R_ARC_GOTPC)
+ M = 4; // bitsi...
2017 Sep 18
1
Do I need to modify the AddrLoc of LLD for ARC target?
...nst uint16_t EMachine,
>>> RelExpr Expr, uint32_t Type, uint64_t VMA,
>>> uint64_t OutSecOff, uint64_t RelOff) {
>>> if (EMachine != EM_ARC_COMPACT || EMachine != EM_ARC_COMPACT2 ||
>>> Expr != R_PC || Expr != R_GOT_PC) {
>>> return;
>>> }
>>>
>>> uint64_t M = 0;
>>> if (Type == R_ARC_32_PCREL || Type == R_ARC_PC32 || Type ==
>>> R_ARC_GOTPC32
>>> ||
>>> Type == R_ARC_GOTPC) {
>>> M = 4; // bitsi...
2017 Sep 14
4
Do I need to modify the AddrLoc of LLD for ARC target?
...> 4, when vma is 6, output and reloc offset is 0.
>
> How LLD calculates P (AddrLoc)?
>
> P = getOutputSection()->Addr + getOffset(Rel.Offset);
>
> for example, the same high address 0x6, LLD's P is 8, different with arc-ld?
> so do I need to modify the value of P for R_PC case in the getRelocTargetVA?
> please give me some hints, thanks a lot!
>
>
> PS: arc-ld R_ARC_S25W_PCREL's FORMULA is: ( S + A ) - P ) >> 2, and it needs
> middle endian convert, so:
>
> Insn = middleEndianConvert (insn, TRUE);
>
> Insn = replaceDisp25w(Insn,...
2007 Nov 14
10
[GE users] Apple Leopard has dtrace -- anyone used the SGE probes/scripts yet?
Hi,
Chris (cc) and I try to get the SGE master monitor work with Apple Leopard
dtrace. Unfortunately we are stuck with the error msg below.
Anyone having an idea what could be the cause? What I can rule out as
cause is function inlining for the reasons explained below.
Background information on SGE master monitor implementation is under
http://wiki.gridengine.info/wiki/index.php/Dtrace