Displaying 20 results from an estimated 7000 matches similar to: "Function start address"
2018 Jun 02
2
Function start address
Hi
Actually, No particular reason. I just think this might be a solution, then
I use think kind of method. Querying the symbol table would be a good
choice, but I prefer to use LLVM and dwarf information. I am sorry that I
am not familiar with debug_info. But thanks to your suggestions. I would
like to try to solve it with debug_info. It seems work according to your
comments
By the way, I am
2018 May 22
2
LLVM dwarf info is not complete
Hi
I am using llvm-dwarfdump to dump the line table with -debug-line option. I
compiled my program with -gdwarf-3.
I first get the line number and source number for every instruction of the
LLVM IR with metadata. Then I try to find the corresponding binary address
from the dwarf debug info. However, I noticed that the dwarf table might
not always return me the answer and some of the source line
2018 May 22
0
LLVM dwarf info is not complete
> On May 22, 2018, at 8:06 AM, Muhui Jiang via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi
>
> I am using llvm-dwarfdump to dump the line table with -debug-line option. I compiled my program with -gdwarf-3.
>
> I first get the line number and source number for every instruction of the LLVM IR with metadata. Then I try to find the corresponding binary address
2018 Nov 03
2
llvm bug 36466 fix
Hi Dave
Sorry, I meant the hardware you're using to compile LLVM - you mentioned it
took you a long time to rebuild it so it would be hard for you to
write/experiment on tests.
=============================
Compiling LLVM doesn't take me too much time(less than 2 hours). The
hardware is good enough and I am using interl E5 CPU. What I mean is that
it took me a long time to analysis the
2018 Jun 26
2
Instruction boundaries
There should be a line-table entry for the end of the function, which appears to be missing from the dump you provided. llvm-dwarfdump should report this address with 'end_sequence' in the Flags. Are you using a different dumper?
I am not sure but my guess would be that inline data is not represented in the line table. The line table's primary purpose is to inform the debugger
2018 Nov 03
2
llvm bug 36466 fix
Hi Dave
I am not going to access any hardware. I am using clang to analysis the ARM
binaries. The binary is 483.xalancbmk in CPU SPEC2006. When I use the
optimization O0, no crash will occur. The crash occurs when I set
optimization level as O1,O2,O3 and Os.
If I have to recompile and rerun the tests. What version of llvm is
suggested. It would be better if anyone could provide the patch on this
2018 Jun 26
2
Instruction boundaries
I'm not familiar with the target instruction set, but if "MOV PC, R0" is not a return instruction, I'm guessing that the sequence starting at A39C is a dispatch through a jump table. The jump table would be considered part of the instruction stream and included in the scope of the line table. This is not a case where you would see end_sequence; my mistake.
The line table does
2020 Mar 12
3
DWARF .debug_aranges data objects and address spaces
I’ve encountered this kind of architecture before, a long time ago (academically). In a flat-address-space machine such as X64, there is still an instruction/data distinction, but usually only down at the level of I-cache versus D-cache (instruction fetch versus data fetch). A Harvard architecture machine exposes that to the programmer, which effectively doubles the available address space.
2018 Nov 03
2
llvm bug 36466 fix
Hi
I come across the following exception when I use the llvm-dwarfdump
-debug-info target_binary:
llvm-dwarfdump: /home/linux/llvm-7/llvm/lib/MC/MCRegisterInfo.cpp:87: int
llvm::MCRegisterInfo::getLLVMRegNum(unsigned int, bool) const: Assertion `I
!= M+Size && I->FromReg == RegNum && "Invalid RegNum"' failed.
Stack dump:
0. Program arguments:
2020 May 28
4
Range lists, zero-length functions, linker gc
On Thu, May 28, 2020 at 6:03 AM Alexey Lapshin <alapshin at accesssoftek.com>
wrote:
> Hi David,
>
>
> >So there have been several recent discussions about the issues around
>
> >DWARF-agnostic linking and gc-sections, linkonce function definitions
> being
>
> >dropped, etc - and just how much DWARF-awareness would be suitable
>
> >in a linker to
2018 Jun 28
2
Distinguish between ARM and Thumb
Hi
Nowadays I am using LLVM to do ARM binary analysis. I was wondering is llvm
available to provide some debugging information on the mode of ARM.
For example, llvm-dwarfdump could dump some instructions information for
debugging. Is it able to know the mode for each instruction? Or we may
write some llvm pass to help us to know the instruction mode? Any
suggestions are welcomed. Many Thanks
2018 Jun 26
2
Instruction boundaries
Hi paulr
Thanks for your reply. Though DWARF info give me the code address ranges,
there might be inline data. If so, how to handle this case?
As for the dwarf line table. Sometimes, the source line might be zero. Do
you know why? If all instructions should be describe in the line table, I
think analyzing Dwarf line table is enough to get all the instructions
addresses. Do you agree?
I would
2018 Jun 03
2
Function start address
Hi Muhui,
I tried to grep the "DW_TAG_subprogram" from the debug_info . However, I noticed that the number I found is still less than the whole functions I found with LLVM IR. Do you have any experiences? Many Thanks
The only explanation that comes to mind, is that the functions are not in the final binary object file. However, previously you said you believed they were present. If
2020 Mar 16
2
DWARF .debug_aranges data objects and address spaces
I'm not across most of this debug info stuff but I'll stomp in here to
confirm that AVR is a Harvard architecture, with separate addressing for
the data and program buses via specialized instructions which will load
from either one, or the other, but never both.
It makes sense that this particular problem would also affect AVR - the
backend does have some issues with debug info
2020 Mar 12
2
DWARF .debug_aranges data objects and address spaces
On Thu Mar 12, 2020 at 5:37 PM, David Blaikie wrote:
> On Wed, Mar 11, 2020 at 8:09 AM Luke Drummond
> <luke.drummond at codeplay.com>
> wrote:
>
> > On Tue Mar 10, 2020 at 7:45 PM, David Blaikie wrote:
> > > If you only want code addresses, why not use the CU's
> > > low_pc/high_pc/ranges
> > > - those are guaranteed to be only code
2011 Mar 30
5
[LLVMdev] More DWARF problems
I've been trying to track down the problem with the DWARF info that is being
emitted by my front end, which has been broken for about a month now. Here's
what happens when I attempt to use gdb to debug one of my programs on OS X:
gdb stack crawl at point of internal error:
[ 0 ] /usr/libexec/gdb/gdb-i386-apple-darwin (align_down+0x0) [0x122300]
[ 1 ] /usr/libexec/gdb/gdb-i386-apple-darwin
2019 Oct 10
2
DebugInfo work contribution and update.
On Thu, Oct 10, 2019 at 1:18 PM Robinson, Paul <paul.robinson at sony.com>
wrote:
> > Ah, thanks for the list - mostly I'm interested in cases where Clang's
> > output is not valid DWARFv5 when requested - the new features DWARFv5
> > enables/allows but doesn't require are lower priority to me. Which I
> > don't think too much is left - DWARFv5
2011 Mar 30
0
[LLVMdev] More DWARF problems
On Mar 29, 2011, at 7:29 PM, Talin wrote:
> I've been trying to track down the problem with the DWARF info that is being emitted by my front end, which has been broken for about a month now. Here's what happens when I attempt to use gdb to debug one of my programs on OS X:
>
> gdb stack crawl at point of internal error:
> [ 0 ] /usr/libexec/gdb/gdb-i386-apple-darwin
2020 Jan 10
2
Increasing address pool reuse/reducing .o file size in DWARFv5
I don't totally follow the proposed encoding change & would appreciate a small example.
Is the idea to replace e.g. an 'AT_low_pc (<direct address>) + relocation for <direct address>' with an 'AT_low_pc (<indirection into a pool of addresses> + offset)', s.t. the cost of a relocation for the address is paid down the more it's used? How do you figure
2019 Dec 30
3
Increasing address pool reuse/reducing .o file size in DWARFv5
tl;dr: in DWARFv5, using DW_AT_ranges even when the range is contiguous
reduces linked, uncompressed debug_addr size for optimized builds by 93%
and reduces total .o file size (with compression and split) by 15%. It does
grow .dwo file size a bit - DWARFv5, no compression, not split shows the
net effect if all bytes are equal: -O3 clang binary grows by 0.4%, -O0
clang binary shrinks by 0.1%
Should