Restrict redeclaration of tags introduced by using decls to MSVCCompat

This limits the facility added in r199490 while we seek clarification on the
standard.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@199531 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor ABI argument lowering a little

Currently it tracks the number of free registers, but soon it will track
stack offsets for inalloca lowering.

No functional change.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@199532 91177308-0d34-0410-b5e6-96231b3b80d8