Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

SDE debugtrace output incomplete

Michael_R_8
Beginner
1,002 Views

I am running SDE to trace a program, and the output stops without explanation.

I used -dt_filter_start 0x100401000 and -dt_filter_end 0x100409000 to enclose the portion of the program to trace.

In case the problem is dependent on the program being traced, here are the last several lines of output:

TID0: INS 0x0000000100402c29             AVX512EVEX vcvtsi2sd xmm30, xmm29, eax
TID0:   XMM30 := 00000000_00000000_00000000_00000000
TID0:   XMM30 :=                 0                 0    (doubles)
TID0:   XMM30 :=        0        0        0        0    (floats)
TID0: INS 0x0000000100402c2f             AVX512EVEX vcvtsi2sd xmm30, xmm29, ebp
TID0:   XMM30 := 00000000_00000000_00000000_00000000
TID0:   XMM30 :=                 0                 0    (doubles)
TID0:   XMM30 :=        0        0        0        0    (floats)
TID0: INS 0x0000000100402c35             AVX512EVEX vcvtsi2sd xmm30, xmm29, r13d
TID0:   XMM30 := 00000000_00000000_00000000_00000000
TID0:   XMM30 :=                 0                 0    (doubles)
TID0:   XMM30 :=        0        0        0        0    (floats)
TID0: Read 0 = *(UINT32*)000007FFFFFDA000
TID0: INS 0x0000000100402c3b             AVX512EVEX vcvtsi2sd xmm30, xmm29, dword ptr [rcx]
TID0:   XMM30 := 00000000_00000000_00000000_00000000
TID0:   XMM30 :=                 0                 0    (doubles)
TID0:   XMM30 :=        0        0        0        0    (floats)

 

The following instruction disassembles with objdump as:

    1c41:       62 21 17 20 2a b4 f0    vcvtsi2sd xmm30,xmm29,DWORD PTR [rax+r14*8+0x123]
    1c48:       23 01 00 00

 

 If I run the traced program on my system, it stops with 'illegal instruction' but I don't know where that instruction might be.  It could be the one quoted above.  But usually SDE will trace the exception if I have an illegal instruction.

 

0 Kudos
1 Reply
MarkC_Intel
Moderator
1,002 Views

The illegal instruction is probably what is stopping your program and the output.

You might try adding the knob -dt-flush to turn off the output buffering.  slower though.

The start/end triggers are approximate -- you could also try widening the range. 

Also see -itrace-execute -itrace-flush  (the -long-help output uses underscores). Much less output than debugtrace. Quicker.

 

0 Kudos
Reply