[PATCH] Bitcode: Add bitcode format compatibility test

Duncan P. N. Exon Smith dexonsmith at apple.com
Fri Jul 31 13:46:09 PDT 2015


> On 2015-Jul-31, at 13:27, Vedant Kumar <vsk at apple.com> wrote:
> 
> Ah ok.
> 
> Things look OK now. I made the landing pad fix in the 3.6.2 compatibility test as well.
> 
> (0) $ llvm-lit test/Bitcode/compatibility-3.6.ll
> -- Testing: 1 tests, 1 threads --
> PASS: LLVM :: Bitcode/compatibility-3.6.ll (1 of 1)
> Testing Time: 0.03s
>  Expected Passes    : 1
> (0) $ llvm-lit test/Bitcode/compatibility.ll    
> -- Testing: 1 tests, 1 threads --
> PASS: LLVM :: Bitcode/compatibility.ll (1 of 1)
> Testing Time: 0.24s
>  Expected Passes    : 1
> (0) $ git log --oneline | head -n3
> 7202a77 change landingpad result typs
> 7b97a60 Merge branch 'master' into bccompat-submit
> bf2040f DI: Remove DW_TAG_arg_variable and DW_TAG_auto_variable
> 
> Updated patch attached --
> 
> vedant
> 
> <bccompat-submit.patch>

LGTM.  Committed in r243779.

> 
> 
>> On Jul 31, 2015, at 1:22 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
>> 
>> 
>>> On 2015-Jul-31, at 13:12, Vedant Kumar <vsk at apple.com> wrote:
>>> 
>>> I've changed that particular test to use consistent result types. This wasn't failing yesterday afternoon, but I should have double-checked it.
>>> 
>>> That said, I couldn't reproduce the error on trunk (latest commit: bf2040f0 DI: Remove DW_TAG_arg_variable and DW_TAG_auto_variable). It looks like there's a build failure:
>>> 
>>> ../tools/clang/lib/CodeGen/CGDebugInfo.cpp:3092:20: error: no member named 'DW_TAG_arg_variable' in namespace 'llvm::dwarf' llvm::dwarf::DW_TAG_arg_variable, scope, Arg->getName(), tunit, line,
>>> 
>>> vedant
>>> 
>> 
>> Looks like your clang is behind.  (Since your test is LLVM-only, `ninja check` should avoid the build failure.)
>> 
>>> 
>>>> On Jul 31, 2015, at 12:13 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
>>>> 
>>>> I'm getting a failure:
>>>> 
>>>> ******************** TEST 'LLVM :: Bitcode/compatibility.ll' FAILED ********************
>>>> Script:
>>>> --
>>>> /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-as < /Volumes/Data/llvm/staging/test/Bitcode/compatibility.ll | /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-dis | /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-as | /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-dis | /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/FileCheck /Volumes/Data/llvm/staging/test/Bitcode/compatibility.ll
>>>> /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/verify-uselistorder < /Volumes/Data/llvm/staging/test/Bitcode/compatibility.ll
>>>> --
>>>> Exit Code: 1
>>>> 
>>>> Command Output (stderr):
>>>> --
>>>> /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-as: assembly parsed, but does not verify as correct!
>>>> The landingpad instruction should have a consistent result type inside a function.
>>>> %7 = landingpad { i8*, i32 }
>>>>       filter [2 x i32] zeroinitializer
>>>> /Users/dexonsmith/data/llvm.symbols+asserts/staging/./bin/llvm-dis: error: Invalid bitcode signature
>>>> --
>>>> 
>>>> It looks like there's something wrong with your examples for landing
>>>> pads.  Can you take a look?
>>> 
>> 
> 





More information about the llvm-commits mailing list