[SystemZ][z/OS][Windows] Add new functions that set Text/Binary mode for Stdin and...
authorAbhina Sreeskantharajan <Abhina.Sreeskantharajan@ibm.com>
Fri, 16 Apr 2021 12:06:35 +0000 (08:06 -0400)
committerAbhina Sreeskantharajan <Abhina.Sreeskantharajan@ibm.com>
Fri, 16 Apr 2021 12:09:19 +0000 (08:09 -0400)
commit3be2ba0ba38a1799d937a0ef302fb792d12d75a8
tree5c76a75e9743976cd3277ab089a8c63ccb89770a
parent23f8993f32d7aaf3e5cf0cbafd087a46acb0a523
[SystemZ][z/OS][Windows] Add new functions that set Text/Binary mode for Stdin and Stdout based on OpenFlags

On Windows, we want to open a file in Binary mode if OF_CRLF bit is not set. On z/OS, we want to open a file in Binary mode if the OF_Text bit is not set.

This patch creates two new functions called ChangeStdinMode and ChangeStdoutMode which will take OpenFlags as an arg to determine which mode to set stdin and stdout to. This will enable patches like https://reviews.llvm.org/D100056 to not affect Windows when setting the OF_Text flag for raw_fd_streams.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D100130
llvm/include/llvm/Support/Program.h
llvm/lib/Support/MemoryBuffer.cpp
llvm/lib/Support/Unix/Program.inc
llvm/lib/Support/Windows/Program.inc
llvm/lib/Support/raw_ostream.cpp