[PATCH} Remove '.bc' input support from the frontend
Eric Christopher
echristo at gmail.com
Thu Jun 26 14:49:25 PDT 2014
On Thu, Jun 26, 2014 at 2:41 PM, Alp Toker <alp at nuanti.com> wrote:
>
> On 25/06/2014 09:17, Eric Christopher wrote:
>>>
>>> I'm not terribly invested in it - just mentioning that I/think/ I've
>>>
>>> >relied on this feature on at least a few occasions but it wouldn't be
>>> >hard for me to workaround - just one data point. Others may chime in
>>> >with clearer views.
>>> >
>>
>> I've definitely used the feature before and likely will again. That
>> said I personally don't mind doing llvm-dis on a bc file before doing
>> it.
>>
>> The main reason to keep some aspect of the functionality: It's the
>> only way to be sure you're actually passing a bit of bitcode through
>> the precise pipeline that clang has set up. :)
>>
>> -eric
>>
>
> So, I went ahead and wrote some tests to see if we can get some coverage.
>
> The source manager struggles to map errors to source locations in binary
> files, causing crashes:
>
> Assertion failed: (Line && Col && "Line and column should start from 1!"),
> function translateFileLineCol, file clang/lib/Basic/SourceManager.cpp, line
> 1597.
>
> Other times the backend segfaults:
>
> 4 libLLVMBitReader.dylib 0x000000010efe0816
> llvm::BitcodeReader::ParseBitcodeInto(llvm::Module*) + 62
> 5 libLLVMBitReader.dylib 0x000000010efe5b17
> llvm::getLazyBitcodeModule(llvm::MemoryBuffer*, llvm::LLVMContext&) + 129
> 6 libLLVMBitReader.dylib 0x000000010efe5cba
> llvm::parseBitcodeFile(llvm::MemoryBuffer*, llvm::LLVMContext&) + 44
> 7 libLLVMIRReader.dylib 0x000000010e09ad06
> llvm::ParseIR(llvm::MemoryBuffer*, llvm::SMDiagnostic&, llvm::LLVMContext&)
> + 190
> 8 libclangCodeGen.dylib 0x000000010df4412b
> clang::CodeGenAction::ExecuteAction() + 395
> 9 libclangFrontend.dylib 0x000000010d83f139
> clang::FrontendAction::Execute() +
>
> So it looks like some engineering will be involved if we want to support it
> as a first class feature.
>
> I'll try to find a spare day or two to work on this if people really want
> the feature I guess!
>
Interesting. I certainly don't mind doing an llvm-dis, but I'm curious
about the error.
-eric
>
More information about the cfe-commits
mailing list