The LLILC project does not require direct interaction with the PDB, so it’s not part of our plans. The JIT uses a special reporting format to communicate debug info (frame info and machine->IL mappings) back to the CoreCLR EE. The debugger joins this with the frontend-produced debug information (IL->source and logical frame offset->local, which is in a PDB) to complete the picture. Something similar will likely happen in the AOT case, where the “code generator” just produces a subset of the data, and some other entity (the linker, say) incorporates that into the PDB. From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Vadim Chugunov Sent: Wednesday, April 15, 2015 11:49 AM To: Russell Hadley Cc: llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] MS fork Just curious, are you planning to add support for debug info emission in mspdb format? On Wed, Apr 15, 2015 at 7:01 AM, Russell Hadley <rhadley at microsoft.com<mailto:rhadley at microsoft.com>> wrote: Chandler has it right. Our intent is to upstream everything. The MS fork will be used as a staging area for LLVM changes as we work to get them upstreamed. Tactically we're merging the MS fork everyday with mainline to try and stay close. We're still ramping up right now, and trying to figure out how best to work day to day, but our over arching goal is to enable (mainline) LLVM to be a great code generator for C#. -R ________________________________ From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> <llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu>> on behalf of Chandler Carruth <chandlerc at google.com<mailto:chandlerc at google.com>> Sent: Wednesday, April 15, 2015 3:14 AM To: C Bergström; llvmdev at cs.uiuc.edu<mailto:llvmdev at cs.uiuc.edu> Subject: Re: [LLVMdev] MS fork They presented on LLILC at EuroLLVM, and indicated they were just starting up but were definitely planning to contribute everything back to upstream. Personally, I'm pretty happy to see them talking actively to the community, participating effectively in EuroLLVM and some of the stuff they talked about there was really exciting. On Tue, Apr 14, 2015 at 10:16 PM C Bergström <cbergstrom at pathscale.com<mailto:cbergstrom at pathscale.com>> wrote: Dear MS, Will you be cleaning up and encouraging people to get the work on github upstream? https://github.com/Microsoft/llvm/commits/MS Thanks _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150416/29c28441/attachment.html>
But even if you use link.exe for linking, you'd still need to emit debug info into object files first, at least in the AOT case. Unless, of course, you are not planning to use LLVM backend on Windows at all. On Thu, Apr 16, 2015 at 10:04 AM, Andy Ayers <andya at microsoft.com> wrote:> The LLILC project does not require direct interaction with the PDB, so > it’s not part of our plans. > > > > The JIT uses a special reporting format to communicate debug info (frame > info and machine->IL mappings) back to the CoreCLR EE. The debugger joins > this with the frontend-produced debug information (IL->source and logical > frame offset->local, which is in a PDB) to complete the picture. > > > > Something similar will likely happen in the AOT case, where the “code > generator” just produces a subset of the data, and some other entity (the > linker, say) incorporates that into the PDB. > > > > > > *From:* llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] *On > Behalf Of *Vadim Chugunov > *Sent:* Wednesday, April 15, 2015 11:49 AM > *To:* Russell Hadley > *Cc:* llvmdev at cs.uiuc.edu > > *Subject:* Re: [LLVMdev] MS fork > > > > Just curious, are you planning to add support for debug info emission in > mspdb format? > > > > On Wed, Apr 15, 2015 at 7:01 AM, Russell Hadley <rhadley at microsoft.com> > wrote: > > Chandler has it right. Our intent is to upstream everything. The MS > fork will be used as a staging area for LLVM changes as we work to get them > upstreamed. Tactically we're merging the MS fork everyday with mainline to > try and stay close. > > > > We're still ramping up right now, and trying to figure out how best to > work day to day, but our over arching goal is to enable (mainline) LLVM to > be a great code generator for C#. > > > > -R > > > ------------------------------ > > *From:* llvmdev-bounces at cs.uiuc.edu <llvmdev-bounces at cs.uiuc.edu> on > behalf of Chandler Carruth <chandlerc at google.com> > *Sent:* Wednesday, April 15, 2015 3:14 AM > *To:* C Bergström; llvmdev at cs.uiuc.edu > *Subject:* Re: [LLVMdev] MS fork > > > > They presented on LLILC at EuroLLVM, and indicated they were just starting > up but were definitely planning to contribute everything back to upstream. > Personally, I'm pretty happy to see them talking actively to the community, > participating effectively in EuroLLVM and some of the stuff they talked > about there was really exciting. > > > > On Tue, Apr 14, 2015 at 10:16 PM C Bergström <cbergstrom at pathscale.com> > wrote: > > Dear MS, > > Will you be cleaning up and encouraging people to get the work on > github upstream? > https://github.com/Microsoft/llvm/commits/MS > > Thanks > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150416/5c940aaa/attachment.html>
Perhaps I interpreted your original question too narrowly and read “mspdb format” as “structure of the PDB”. The format for the backend-produced debug data is CodeView, not PDB. We don’t think of the PDB as a debug format. It is a container – a database of program information (hence the name Program DataBase). For the AOT our intention is to emit native debug format, so CodeView on Windows and Dwarf on Linux, etc. Thus on Windows we will likely extend LLVM to emit the relevant bits of CodeView into COFF object files. The LLILC project won’t have much to say about the PDB. More details forthcoming as we work through our plans. From: Vadim Chugunov [mailto:vadimcn at gmail.com] Sent: Thursday, April 16, 2015 3:01 PM To: Andy Ayers Cc: Russell Hadley; llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] MS fork But even if you use link.exe for linking, you'd still need to emit debug info into object files first, at least in the AOT case. Unless, of course, you are not planning to use LLVM backend on Windows at all. On Thu, Apr 16, 2015 at 10:04 AM, Andy Ayers <andya at microsoft.com<mailto:andya at microsoft.com>> wrote: The LLILC project does not require direct interaction with the PDB, so it’s not part of our plans. The JIT uses a special reporting format to communicate debug info (frame info and machine->IL mappings) back to the CoreCLR EE. The debugger joins this with the frontend-produced debug information (IL->source and logical frame offset->local, which is in a PDB) to complete the picture. Something similar will likely happen in the AOT case, where the “code generator” just produces a subset of the data, and some other entity (the linker, say) incorporates that into the PDB. From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> [mailto:llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu>] On Behalf Of Vadim Chugunov Sent: Wednesday, April 15, 2015 11:49 AM To: Russell Hadley Cc: llvmdev at cs.uiuc.edu<mailto:llvmdev at cs.uiuc.edu> Subject: Re: [LLVMdev] MS fork Just curious, are you planning to add support for debug info emission in mspdb format? On Wed, Apr 15, 2015 at 7:01 AM, Russell Hadley <rhadley at microsoft.com<mailto:rhadley at microsoft.com>> wrote: Chandler has it right. Our intent is to upstream everything. The MS fork will be used as a staging area for LLVM changes as we work to get them upstreamed. Tactically we're merging the MS fork everyday with mainline to try and stay close. We're still ramping up right now, and trying to figure out how best to work day to day, but our over arching goal is to enable (mainline) LLVM to be a great code generator for C#. -R ________________________________ From: llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu> <llvmdev-bounces at cs.uiuc.edu<mailto:llvmdev-bounces at cs.uiuc.edu>> on behalf of Chandler Carruth <chandlerc at google.com<mailto:chandlerc at google.com>> Sent: Wednesday, April 15, 2015 3:14 AM To: C Bergström; llvmdev at cs.uiuc.edu<mailto:llvmdev at cs.uiuc.edu> Subject: Re: [LLVMdev] MS fork They presented on LLILC at EuroLLVM, and indicated they were just starting up but were definitely planning to contribute everything back to upstream. Personally, I'm pretty happy to see them talking actively to the community, participating effectively in EuroLLVM and some of the stuff they talked about there was really exciting. On Tue, Apr 14, 2015 at 10:16 PM C Bergström <cbergstrom at pathscale.com<mailto:cbergstrom at pathscale.com>> wrote: Dear MS, Will you be cleaning up and encouraging people to get the work on github upstream? https://github.com/Microsoft/llvm/commits/MS Thanks _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu<mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150416/5636e579/attachment.html>