Fix some posix assumptions related to running shell commands.

This is a resubmit of r223548, which was reverted due to breaking
tests on Linux and Mac.

This resubmit fixes the reason for the revert by adding back some
accidentally removed code which appends -c to the command line
when running /bin/sh.

This resubmit also differs from the original patch in that it sets
the architecture on the ProcessLaunchInfo.  A follow-up patch will
refactor this to separate the logic for different platforms.

Differential Revision: http://reviews.llvm.org/D6553

Reviewed By: Greg Clayton
DebugInfo: Ensure the store for an assignment is attributed to the beginning of the assignment expression
Fix platform shell test to run "dir c:\" instead of "ls /" on Windows.
[Hexagon] Adding xtype doubleword comparisons.  Removing unused multiclass.