llvm-6502/include/llvm/Support
Alexander Kornienko ece0bec0c8 Implemented llvm::sys::locale::columnWidth and isPrint for the case of generic UTF8-capable terminal.
Summary:
This is a second attempt to get this right. After reading the Unicode
Standard I came up with the code that uses definitions of "printable" and
"column width" more suitable for terminal output (i.e. fixed-width fonts and
special treatment of many control characters).
The implementation here can probably be used for Windows and MacOS if someone
can test it properly.
The patch addresses PR14910.

Reviewers: jordan_rose, gribozavr

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1253

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187837 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-07 00:07:07 +00:00
..
AIXDataTypesFix.h
AlignOf.h Incrase the number of parameters for AlignedCharArrayUnion. 2013-01-09 10:39:16 +00:00
Allocator.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
ArrayRecycler.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Atomic.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
BlockFrequency.h Fix typo in comment 2013-07-02 04:15:28 +00:00
BranchProbability.h
CallSite.h Extend 'readonly' and 'readnone' to work on function arguments as well as 2013-07-06 00:29:58 +00:00
Capacity.h
Casting.h Fix a regression I introduced back in r178147. 2013-07-18 02:42:40 +00:00
CBindingWrapping.h Fix file header comment. 2013-05-01 21:01:06 +00:00
CFG.h Fix size_t -> uint warnings with MSVC 64-bit build 2013-07-20 00:20:10 +00:00
circular_raw_ostream.h Use empty parens for empty function parameter list instead of '(void)'. 2012-11-15 16:51:49 +00:00
CodeGen.h This exposes more MCJIT options via the C API: 2013-05-01 22:58:00 +00:00
COFF.h COFF: Add constants for optional data directory. 2013-07-16 03:11:55 +00:00
CommandLine.h Fix -Wdocumentation warning 2013-07-18 21:00:12 +00:00
Compiler.h Reland "Use Clang's __has_* macros in Compiler.h ..." with fixes 2013-07-08 19:06:25 +00:00
Compression.h Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools. 2013-04-23 08:28:39 +00:00
ConstantFolder.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
ConstantRange.h Use move semantics if possible to construct ConstantRanges. 2013-07-11 15:37:27 +00:00
ConvertUTF.h [Support] Add a Unicode conversion wrapper from UTF16 to UTF8 2013-07-16 17:14:33 +00:00
CrashRecoveryContext.h
DataExtractor.h Be consistent about the field name - AddressSize, not PointerSize. Add 2013-02-05 23:26:02 +00:00
DataFlow.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
DataStream.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
DataTypes.h.cmake Remove dead or useless header checks from cmake and autoconf 2013-07-26 16:54:23 +00:00
DataTypes.h.in Remove dead or useless header checks from cmake and autoconf 2013-07-26 16:54:23 +00:00
Debug.h Typos. 2012-07-27 21:41:59 +00:00
DebugLoc.h Remove trailing spaces. 2013-03-18 23:04:30 +00:00
Disassembler.h
DOTGraphTraits.h ScheduleDAG: colorize the DOT graph and improve formatting. 2013-01-25 07:45:25 +00:00
Dwarf.h Add DW_AT_GNU_odr_signature to the set of dwarf attributes. 2013-07-14 22:02:31 +00:00
DynamicLibrary.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
ELF.h Remove the mblaze backend from llvm. 2013-07-25 18:55:05 +00:00
Endian.h Make the host endianness check an integer constant expression. 2013-04-15 14:44:24 +00:00
Errno.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
ErrorHandling.h Add a boolean parameter to the llvm::report_fatal_error() function to indicated 2013-03-27 18:27:54 +00:00
ErrorOr.h [Support][ErrorOr] Add support for implicit conversion from error code/condition enums. 2013-02-28 01:44:26 +00:00
FEnv.h Refine fenv.h handling: check if the desired macros exist, before using 2013-03-25 13:13:33 +00:00
FileOutputBuffer.h [Support] Make FileOutputBuffer work on Windows. 2012-12-03 22:09:52 +00:00
FileSystem.h Expose that the unique file ID has a device and a file component. 2013-08-01 21:36:02 +00:00
FileUtilities.h Don't use PathV1.h in FileUtilities.h. 2013-06-13 20:41:00 +00:00
Format.h Fix Doxygen issues: 2012-09-14 14:57:36 +00:00
FormattedStream.h Add line tracking support to FormattedStream 2013-05-08 20:29:10 +00:00
GCOV.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
GetElementPtrTypeIterator.h Avoid warnings about unused parameters that tend to come up a lot when 2013-06-10 12:09:30 +00:00
GraphWriter.h Convert a use of sys::Path::GetTemporaryDirectory. 2013-06-14 16:43:15 +00:00
Host.h The GNU/HURD is also using the libc. Therefor, endian.h should be included, not machine/endian.h. See full build log https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-3.3&arch=hurd-i386&ver=1%3A3.3~%2Brc3-1~exp1&stamp=1370358869 2013-06-05 09:17:26 +00:00
IncludeFile.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
InstIterator.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
IntegersSubset.h Fix size_t -> uint warnings with MSVC 64-bit build 2013-07-20 00:20:10 +00:00
IntegersSubsetMapping.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
LeakDetector.h
LEB128.h Formatting. 2013-08-01 01:38:16 +00:00
LICENSE.TXT
Locale.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
LockFileManager.h Fix a race condition in the lock-file manager: once the lock file is 2013-01-10 02:01:35 +00:00
MachO.h Remove tabs. 2012-07-19 00:01:00 +00:00
ManagedStatic.h
MathExtras.h Use gnu style builtins in MathExtras.h with clang on Windows 2013-08-06 19:45:27 +00:00
MD5.h Add support for adding the contents of a StringRef to the MD5 hash. 2013-05-31 22:34:56 +00:00
Memory.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
MemoryBuffer.h Expand the comment on getOpenFileSlice a bit for more details and consistency 2013-07-23 21:05:21 +00:00
MemoryObject.h Remove the Copied parameter from MemoryObject::readBytes. 2013-05-24 10:54:58 +00:00
Mutex.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
MutexGuard.h Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION. 2012-09-17 06:31:17 +00:00
NoFolder.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
OutputBuffer.h
PassNameParser.h Add missing verb to comment in PassNameParser.h 2013-05-17 16:51:32 +00:00
Path.h Clarify comment for extension(). 2013-07-19 00:51:17 +00:00
PatternMatch.h Remove trailing whitespace. 2013-07-26 18:09:50 +00:00
PluginLoader.h
PointerLikeTypeTraits.h
PredIteratorCache.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
PrettyStackTrace.h Add LLVM_OVERRIDE to methods that override their base classes. 2012-09-23 02:12:10 +00:00
Process.h sys::process::get_id() now returns the process ID instead of a process handle on Windows. Patch thanks to Kim Gräsman! 2013-06-08 20:29:03 +00:00
Program.h Create a replacement for sys::Path::PathSeparator. 2013-06-25 01:10:36 +00:00
raw_os_ostream.h Add LLVM_OVERRIDE to methods that override their base classes. 2012-09-23 02:12:10 +00:00
raw_ostream.h Add a wrapper for open. 2013-07-16 19:44:17 +00:00
Recycler.h Special case Recycler::clear(BumpPtrAllocator). 2013-01-04 22:35:45 +00:00
RecyclingAllocator.h Fix RecyclingAllocator::PrintStats to print the underlying allocator's stats. 2013-05-25 01:47:42 +00:00
Regex.h Introduce Regex::isLiteralERE function. 2013-08-05 17:47:59 +00:00
Registry.h [Support/Registry.h] Include llvm/Support/Compiler.h. 2013-06-27 17:57:40 +00:00
RegistryParser.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
RWMutex.h Use LLVM_DELETED_FUNCTION for copy constructors and copy assignment operators that aren't implemented. 2012-09-16 21:37:56 +00:00
SaveAndRestore.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Signals.h Don't use PathV1.h in Signals.h. 2013-06-13 21:16:58 +00:00
SMLoc.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Solaris.h Define BYTE_ORDER on Solaris. 2013-05-21 20:36:13 +00:00
SourceMgr.h Fix size_t -> uint warnings with MSVC 64-bit build 2013-07-20 00:20:10 +00:00
StreamableMemoryObject.h Remove the Copied parameter from MemoryObject::readBytes. 2013-05-24 10:54:58 +00:00
StringPool.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
StringRefMemoryObject.h Remove the Copied parameter from MemoryObject::readBytes. 2013-05-24 10:54:58 +00:00
SwapByteOrder.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
system_error.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
SystemUtils.h Move PrependMainExecutablePath next to its only user. 2013-06-14 15:12:13 +00:00
TargetFolder.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
TargetRegistry.h Avoid warnings about unused parameters that tend to come up a lot when 2013-06-10 12:09:30 +00:00
TargetSelect.h
Threading.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
ThreadLocal.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Timer.h Slight cosmetic fixes 2013-02-26 18:05:31 +00:00
TimeValue.h Fix TimeValue::toWin32Time() to be symmetric to fromWin32Time() and compatible to Win32's FILETIME. 2013-07-16 02:43:51 +00:00
ToolOutputFile.h Add a wrapper for open. 2013-07-16 19:44:17 +00:00
type_traits.h Cleanup the simplify_type implementation. 2013-03-27 16:43:11 +00:00
UnicodeCharRanges.h Implemented llvm::sys::locale::columnWidth and isPrint for the case of generic UTF8-capable terminal. 2013-08-07 00:07:07 +00:00
Valgrind.h Sort the #include lines for the include/... tree with the script. 2012-12-03 17:02:12 +00:00
ValueHandle.h Cleanup the simplify_type implementation. 2013-03-27 16:43:11 +00:00
Watchdog.h Add a new watchdog timer interface. The interface does not permit handling timeouts, so 2013-03-26 01:27:52 +00:00
Win64EH.h Implements low-level object file format specific output for COFF and 2013-04-03 18:31:38 +00:00
YAMLParser.h Use only explicit bool conversion operators 2013-05-15 07:36:59 +00:00
YAMLTraits.h Revert r185852. 2013-07-08 20:27:34 +00:00