Fix the representation of wide strings in the AST and IR so that it uses the native representation of integers for the elements.  This fixes a bunch of nastiness involving
treating wide strings as a series of bytes.

Patch by Seth Cantrell.

llvm-svn: 143417
diff --git a/clang/test/CodeGenCXX/uncode-string.cpp b/clang/test/CodeGenCXX/uncode-string.cpp
index e543149..1d83999 100644
--- a/clang/test/CodeGenCXX/uncode-string.cpp
+++ b/clang/test/CodeGenCXX/uncode-string.cpp
@@ -3,4 +3,4 @@
 
 wchar_t s[] = L"\u2722";
 
-// CHECK: @s = global [8 x i8] c"\22'\00\00\00\00\00\00"
+// CHECK: @s = global [2 x i32] [i32 10018, i32 0], align 4