summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objcopy
diff options
context:
space:
mode:
authorStella Stamenova <stilis@microsoft.com>2018-07-20 16:19:36 +0000
committerStella Stamenova <stilis@microsoft.com>2018-07-20 16:19:36 +0000
commitca0547c83cdc8300c2b9f11416a1a302885558e2 (patch)
tree38f7962d076b0f1d4adb551379e2d491208962d2 /llvm/test/tools/llvm-objcopy
parenta85b86a9828c105f834dd3c14aa3f338ea7fd8c1 (diff)
downloadbcm5719-llvm-ca0547c83cdc8300c2b9f11416a1a302885558e2.tar.gz
bcm5719-llvm-ca0547c83cdc8300c2b9f11416a1a302885558e2.zip
[llvm-objcopy, tests] Fix several llvm-objcopy tests
Summary: In Python 3, sys.stdout.write expects a string rather than bytes. In order to be able to write the bytes to stdout, we need to use the buffer directly instead. This change is borrowing the implementation for writing to stdout that cat.py uses. Note that we cannot use cat.py directly because the file we are trying to open is a gzip file. Reviewers: asmith, bkramer, alexshap, jakehehrlich Reviewed By: alexshap, jakehehrlich Subscribers: jakehehrlich, llvm-commits Differential Revision: https://reviews.llvm.org/D49515 llvm-svn: 337567
Diffstat (limited to 'llvm/test/tools/llvm-objcopy')
-rw-r--r--llvm/test/tools/llvm-objcopy/Inputs/ungzip.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/test/tools/llvm-objcopy/Inputs/ungzip.py b/llvm/test/tools/llvm-objcopy/Inputs/ungzip.py
index 41f858edae2..c7b1de96b25 100644
--- a/llvm/test/tools/llvm-objcopy/Inputs/ungzip.py
+++ b/llvm/test/tools/llvm-objcopy/Inputs/ungzip.py
@@ -2,4 +2,12 @@ import gzip
import sys
with gzip.open(sys.argv[1], 'rb') as f:
- sys.stdout.write(f.read())
+ writer = getattr(sys.stdout, 'buffer', None)
+ if writer is None:
+ writer = sys.stdout
+ if sys.platform == "win32":
+ import os, msvcrt
+ msvcrt.setmode(sys.stdout.fileno(),os.O_BINARY)
+
+ writer.write(f.read())
+ sys.stdout.flush()
OpenPOWER on IntegriCloud