]> granicus.if.org Git - clang/commit
The UTF16 string referenced by a CFString should go into the __TEXT,__ustring
authorBill Wendling <isanbard@gmail.com>
Fri, 30 Mar 2012 00:26:17 +0000 (00:26 +0000)
committerBill Wendling <isanbard@gmail.com>
Fri, 30 Mar 2012 00:26:17 +0000 (00:26 +0000)
commit84392d0edc7127f868d3c97484ffc9d789c317ff
treee573e4eba6428d16f96afd586711fe4848eb6949
parentb085d898bdfe35097eba45f4072b0f6865f561dc
The UTF16 string referenced by a CFString should go into the __TEXT,__ustring
section. A 'normal' string will go into the __TEXT,__const section, but this
isn't good for UTF16 strings. The __ustring section allows for coalescing, among
other niceties (such as allowing the linker to easily split up strings).

Instead of outputting the UTF16 string as a series of bytes, output it as a
series of shorts. The back-end will then nicely place the UTF16 string into the
correct section, because it's a mensch.
<rdar://problem/10655949>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153710 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenModule.cpp
test/CodeGen/darwin-string-literals.c
test/CodeGen/utf16-cfstrings.c [new file with mode: 0644]
test/CodeGenObjC/2009-08-05-utf16.m