This patch introduces an alternative layout for basic_string which when the string is short, the data pointer will be word-aligned.  It can be activated with -D_LIBCPP_ALTERNATE_STRING_LAYOUT.  These two different layouts (the default and _LIBCPP_ALTERNATE_STRING_LAYOUT) are not ABI compatible with each other.  Once one is chosen for a given platform, it is disruptive to change it.
This patch introduces an alternative layout for basic_string which when the string is short, the data pointer will be word-aligned.  It can be activated with -D_LIBCPP_ALTERNATE_STRING_LAYOUT.  These two different layouts (the default and _LIBCPP_ALTERNATE_STRING_LAYOUT) are not ABI compatible with each other.  Once one is chosen for a given platform, it is disruptive to change it.

git-svn-id: 756ef344af921d95d562d9e9f9389127a89a6314@180811 91177308-0d34-0410-b5e6-96231b3b80d8

llvm-mirror/libcxx,llvm-mirror/libcxx,llvm-mirror/libcxx,llvm-mirror/libcxx,llvm-mirror/libcxx