LLVM has changes the semantics of dbg.declare for describing function arguments. After this patch a dbg.declare always takes the *address* of a variable as the first argument, even if the argument is not an alloca.
https://bugs.llvm.org/show_bug.cgi?id=32382
rdar://problem/31205000