search for: coffobjectfile

Displaying 20 results from an estimated 72 matches for "coffobjectfile".

2014 Aug 26
2
[LLVMdev] possible bug in COFFObjectFile::getSymbolType()
...amp; execute), but the test is (read & !write), so the symbol gets marked as ST_Data instead of ST_Other. From: David Majnemer [mailto:david.majnemer at gmail.com] Sent: Friday, August 22, 2014 5:44 PM To: Ted Woodward Cc: LLVM Developers Mailing List Subject: Re: [LLVMdev] possible bug in COFFObjectFile::getSymbolType() COFF sections also contain stuff like IMAGE_SCN_CNT_CODE and IMAGE_SCN_CNT_INITIALIZED_DATA. Are either of those set on the section in question? It may make more sense to try to key off of those section characteristics as well. On Fri, Aug 22, 2014 at 9:55 AM, Ted Wood...
2014 Aug 22
2
[LLVMdev] possible bug in COFFObjectFile::getSymbolType()
...or symbols with type SymbolRef::ST_Data instead of disassembling them. This causes llvm/test/MC/ARM/Windows/mov32t-range.s to fail, because the symbol "truncation" comes back as SymbolRef::ST_Data, and the code gets dumped as bytes instead of disassembled. I traced the problem back to COFFObjectFile::getSymbolType() in llvm/lib/Object/COFFObjectFile.cpp : if (Characteristics & COFF::IMAGE_SCN_MEM_READ && ~Characteristics & COFF::IMAGE_SCN_MEM_WRITE) // Read only. Result = SymbolRef::ST_Data; I think it should also check for ~Characteristics & COFF::...
2011 Mar 31
1
[LLVMdev] [patch] Support PE/COFF in COFFObjectFile, fix some bugs object file readers
Hi, The attached patch does a few separate things. I can split them up if you like but it's pretty small. - Adds support for sniffing PE/COFF files on win32 (.exe and .dll) which are COFF files that have an MS-DOS compatibility stub on the front of them. - Fixes a bug in the COFFObjectFile's support for the Microsoft COFF extension for long symbol names, wherein it was attempting to parse the leading '/' in an extended symbol name reference as part of the integer offset. - Fixes bugs in COFFObjectFile and ELFObjectFile wherein section and symbol it...
2018 Mar 08
2
[PDB] [JIT] Write to PDB file when COFFObjectFile is emitted by JIT
Is it possible to write a .pdb file containing the debug info stored in a COFFObjectFile once the NotifyObjectEmitted is triggered by the JIT compiler ? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180308/3c25cddd/attachment.html>
2018 Mar 10
0
[PDB] [JIT] Write to PDB file when COFFObjectFile is emitted by JIT
...able to use that. Is the aim to be able to debug JIT'd code? Which debugger do you plan to use? -- Lang. On Thu, Mar 8, 2018 at 4:23 AM, Vivien Millet via llvm-dev < llvm-dev at lists.llvm.org> wrote: > Is it possible to write a .pdb file containing the debug info stored in a > COFFObjectFile once the NotifyObjectEmitted is triggered by the JIT > compiler ? > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > -------------- next part ----------...
2018 Mar 14
2
[PDB] [JIT] Write to PDB file when COFFObjectFile is emitted by JIT
...debug JIT'd code? Which debugger do you plan to > use? > > -- Lang. > > > On Thu, Mar 8, 2018 at 4:23 AM, Vivien Millet via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Is it possible to write a .pdb file containing the debug info stored in a >> COFFObjectFile once the NotifyObjectEmitted is triggered by the JIT >> compiler ? >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >> &gt...
2018 Mar 14
0
[PDB] [JIT] Write to PDB file when COFFObjectFile is emitted by JIT
...you plan to >> use? >> >> -- Lang. >> >> >> On Thu, Mar 8, 2018 at 4:23 AM, Vivien Millet via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >>> Is it possible to write a .pdb file containing the debug info stored in >>> a COFFObjectFile once the NotifyObjectEmitted is triggered by the JIT >>> compiler ? >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-d...
2018 Mar 14
1
[PDB] [JIT] Write to PDB file when COFFObjectFile is emitted by JIT
...t; >>> -- Lang. >>> >>> >>> On Thu, Mar 8, 2018 at 4:23 AM, Vivien Millet via llvm-dev < >>> llvm-dev at lists.llvm.org> wrote: >>> >>>> Is it possible to write a .pdb file containing the debug info stored in >>>> a COFFObjectFile once the NotifyObjectEmitted is triggered by the JIT >>>> compiler ? >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> llvm-dev at lists.llvm.org >>>> http://lists.llvm.org/cgi-bin...
2017 Feb 06
3
Kaleidoscope tutorial: comments, corrections and Windows support
...permail/llvm-dev/2016-April/097964.html ). Applied to the current version of Kaleidoscope, he suggested to use "CompileLayer.findSymbolIn(H, Name, false)" in "KaleidoscopeJIT::findMangledSymbol" to also allow non-exported symbols. I fixed it by changing "COFFObjectFile::getSymbolFlags" in llvm-src/lib/Object/COFFObjectFile.cpp to additionally OR SymbolRef::SF_Exported to Result: > uint32_t COFFObjectFile::getSymbolFlags(DataRefImpl Ref) const { > COFFSymbolRef Symb = getCOFFSymbol(Ref); > uint32_t Result = SymbolRef::SF_None; > >...
2015 Oct 05
2
[cfe-dev] Orc Windows C++
...also occurs with -mcmodel=large specified. The exact output of the second command, llvm-rtdyld, is as follows... Assertion failed: (Sec->Characteristics & COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA) == 0 && "BSS sections don't have contents!", file C:\llvm\llvm\lib\Object\COFFObjectFile.cpp, line 951 0x00007FF65EAA574C (0x0000000000000016 0x00007FFC73140648 0x0000007900000008 0x00000079E68EDC40), HandleAbort() + 0xC bytes(s), c:\llvm\llvm\lib\support\windows\signals.inc, line 296 0x00007FFC807B396F (0x00007FF600000016 0x0000000000000000 0x0000007900000004 0x0000000000000101), rais...
2018 Jan 20
2
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...coff It's true that yaml2coff is using the COFFParser structure, but if you look at the writeCOFF function in yaml2coff it's pretty bare-metal. The logic you need will be almost identical, except that instead of checking the COFFParser for the various fields, you'll check the existing COFFObjectFile, which should have similar fields. The only thing you need to different is when writing the section table and section contents, to insert a new entry. Since you're injecting a section into the middle, you'll also probably need to push back the file pointer of all subsequent sections so th...
2015 Oct 05
2
[cfe-dev] Orc Windows C++
...ified. >> >> The exact output of the second command, llvm-rtdyld, is as follows... >> >> Assertion failed: (Sec->Characteristics & COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA) == 0 && "BSS sections don't have contents!", file C:\llvm\llvm\lib\Object\COFFObjectFile.cpp, line 951 >> 0x00007FF65EAA574C (0x0000000000000016 0x00007FFC73140648 0x0000007900000008 0x00000079E68EDC40), HandleAbort() + 0xC bytes(s), c:\llvm\llvm\lib\support\windows\signals.inc, line 296 >> 0x00007FFC807B396F (0x00007FF600000016 0x0000000000000000 0x0000007900000004 0x00000...
2018 Jan 20
0
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...with global hashes, as that might help me understand how to create the .debug$H section, how to update the file section count and how to properly write this back. The code on yaml2coff is expecting to be working on the yaml COFFParser struct and I'm having quite a bit of a headache turning the COFFObjectFile into a COFFParser object or compatible... Tomorrow I might try the very non efficient path of coff2yaml and then yaml2coff with the hashes header... but it seems way too inefficient and convoluted. On Fri, Jan 19, 2018 at 10:38 PM, Zachary Turner <zturner at google.com> wrote: > > &gt...
2018 Jan 20
2
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...s using the COFFParser structure, but if you >> look at the writeCOFF function in yaml2coff it's pretty bare-metal. The >> logic you need will be almost identical, except that instead of checking >> the COFFParser for the various fields, you'll check the existing >> COFFObjectFile, which should have similar fields. >> >> The only thing you need to different is when writing the section table >> and section contents, to insert a new entry. Since you're injecting a >> section into the middle, you'll also probably need to push back the file >&...
2018 Jan 19
2
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...hing, so I suspect you won't need to know much about CodeView to do this. I think Peter has the right idea about putting this in llvm-objcopy. You can look at one of the existing CopyBinary functions there, which currently only work for ELF, but you can just make a new overload that accepts a COFFObjectFile. I would probably start by iterating over each of the sections (getNumberOfSections / getSectionName) looking for .debug$T and .debug$H sections. If you find a .debug$H section then you can just skip that object file. If you find a .debug$T but not a .debug$H, then basically do the same thing th...
2019 Apr 24
2
[DebugInfo] DWARF C API
...Sorry, I forget to attach the valgrind dump to this. I was not sure if my implementation was ok, so I wanted to ask if I've done something wrong first. Process terminating with default action of signal 11 (SIGSEGV) Access not within mapped region at address 0xB at 0x54F4516: llvm::object::COFFObjectFile::moveSectionNext(llvm::object::DataRefImpl&) const (COFFObjectFile.cpp:267) by 0x55A62FB: llvm::object::ObjectFile::isBerkeleyText(llvm::object::DataRefImpl) const (ObjectFile.cpp:80) by 0x5538CF9: llvm::object::RelocationRef::getType() const (ObjectFile.h:543) by 0x55AE53E: llvm::o...
2018 Jan 20
0
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...that yaml2coff is using the COFFParser structure, but if you > look at the writeCOFF function in yaml2coff it's pretty bare-metal. The > logic you need will be almost identical, except that instead of checking > the COFFParser for the various fields, you'll check the existing > COFFObjectFile, which should have similar fields. > > The only thing you need to different is when writing the section table and > section contents, to insert a new entry. Since you're injecting a > section into the middle, you'll also probably need to push back the file > pointer of all s...
2018 Jan 20
0
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...FParser structure, but if you >>> look at the writeCOFF function in yaml2coff it's pretty bare-metal. >>> The logic you need will be almost identical, except that instead of >>> checking the COFFParser for the various fields, you'll check the existing >>> COFFObjectFile, which should have similar fields. >>> >>> The only thing you need to different is when writing the section table >>> and section contents, to insert a new entry. Since you're injecting a >>> section into the middle, you'll also probably need to push bac...
2015 Oct 14
4
[cfe-dev] Orc Windows C++
...output of the second command, llvm-rtdyld, is as follows... >> >> >> >> Assertion failed: (Sec->Characteristics & >> COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA) == 0 && "BSS sections don't have >> contents!", file C:\llvm\llvm\lib\Object\COFFObjectFile.cpp, line 951 >> >> 0x00007FF65EAA574C (0x0000000000000016 0x00007FFC73140648 >> 0x0000007900000008 0x00000079E68EDC40), HandleAbort() + 0xC bytes(s), >> c:\llvm\llvm\lib\support\windows\signals.inc, line 296 >> >> 0x00007FFC807B396F (0x00007FF600000016 0x0000000...
2018 Jan 20
2
[lldb-dev] Trying out lld to link windows binaries (using msvc as a compiler)
...e, but if you >>>> look at the writeCOFF function in yaml2coff it's pretty bare-metal. >>>> The logic you need will be almost identical, except that instead of >>>> checking the COFFParser for the various fields, you'll check the existing >>>> COFFObjectFile, which should have similar fields. >>>> >>>> The only thing you need to different is when writing the section table >>>> and section contents, to insert a new entry. Since you're injecting a >>>> section into the middle, you'll also probably...