llvm-project/llvm
Joel E. Denny f095b8c425 [lit] Clean up internal diff's encoding handling
As suggested by rnk at D67643#1673043, instead of reading files
multiple times until an appropriate encoding is found, read them once
as binary, and then try to decode what was read.

For Python >= 3.5, don't fail when attempting to decode the
`diff_bytes` output in order to print it.

Avoid failures for Python 2.7 used on some Windows bots by
transforming diff output with `lit.util.to_string` before writing it
to stdout.

Finally, add some tests for encoding handling.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D68664

llvm-svn: 375018
2019-10-16 17:21:24 +00:00
..
benchmarks
bindings Reapply r374743 with a fix for the ocaml binding 2019-10-14 16:15:14 +00:00
cmake [llvm] [ocaml] Support linking against dylib 2019-10-11 14:32:43 +00:00
docs [llvm-ar] Make paths case insensitive when on windows 2019-10-16 14:07:57 +00:00
examples
include [SVE][IR] Small TypeSize improvements left out of initial commit 2019-10-16 16:33:41 +00:00
lib [AMDGPU] Supress unused sdwa insts generation 2019-10-16 16:58:06 +00:00
projects Add few docs and implementation of strcpy and strcat. 2019-10-04 17:30:54 +00:00
resources
runtimes Adding support for overriding LLVM_ENABLE_RUNTIMES for runtimes builds. 2019-09-24 22:38:18 +00:00
test [DWARF5] Added support for DW_AT_noreturn attribute to be emitted for 2019-10-16 16:30:38 +00:00
tools [llvm-ar] Make paths case insensitive when on windows 2019-10-16 14:07:57 +00:00
unittests [Remarks] Fix warning for ambigous `else` behind EXPECT macro 2019-10-16 16:43:34 +00:00
utils [lit] Clean up internal diff's encoding handling 2019-10-16 17:21:24 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Add few docs and implementation of strcpy and strcat. 2019-10-04 17:30:54 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt Test commit. 2019-10-03 14:57:49 +00:00
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.