-
Notifications
You must be signed in to change notification settings - Fork 14.9k
[lit] Implement builtin umask #94621
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This allows a few more tests to use lit's internal shell.
@llvm/pr-subscribers-debuginfo Author: Jay Foad (jayfoad) ChangesThis allows a few more tests to use lit's internal shell. Full diff: https://github.com/llvm/llvm-project/pull/94621.diff 4 Files Affected:
diff --git a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
index a95d1c0aafa21..fdcba4dcd666b 100644
--- a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
@@ -3,7 +3,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
index 8f4993f4f3d29..66a481a2230d1 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
@@ -6,7 +6,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
index 376e33a217819..f4d3099056168 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
@@ -4,7 +4,6 @@
## Windows has no umask so this test makes no sense, nor would
## it work because there is no umask(1) in a Windows environment
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: rm -f %t
# RUN: touch %t
diff --git a/llvm/utils/lit/lit/TestRunner.py b/llvm/utils/lit/lit/TestRunner.py
index da7fa86fd3917..d2627728eb09e 100644
--- a/llvm/utils/lit/lit/TestRunner.py
+++ b/llvm/utils/lit/lit/TestRunner.py
@@ -87,10 +87,11 @@ class ShellEnvironment(object):
we maintain a dir stack for pushd/popd.
"""
- def __init__(self, cwd, env):
+ def __init__(self, cwd, env, umask=-1):
self.cwd = cwd
self.env = dict(env)
self.dirStack = []
+ self.umask = umask
def change_dir(self, newdir):
if os.path.isabs(newdir):
@@ -565,6 +566,18 @@ class SHFILEOPSTRUCTW(Structure):
return ShellCommandResult(cmd, "", stderr.getvalue(), exitCode, False)
+def executeBuiltinUmask(cmd, shenv):
+ """executeBuiltinUmask - Change the current umask."""
+ if len(cmd.args) != 2:
+ raise InternalShellError(cmd, "'umask' supports only one argument")
+ try:
+ # Update the umask in the parent environment.
+ shenv.umask = int(cmd.args[1], 8)
+ except ValueError as err:
+ raise InternalShellError(cmd, "Error: 'umask': %s" % str(err))
+ return ShellCommandResult(cmd, "", "", 0, False)
+
+
def executeBuiltinColon(cmd, cmd_shenv):
"""executeBuiltinColon - Discard arguments and exit with status 0."""
return ShellCommandResult(cmd, "", "", 0, False)
@@ -719,6 +732,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
"popd": executeBuiltinPopd,
"pushd": executeBuiltinPushd,
"rm": executeBuiltinRm,
+ "umask": executeBuiltinUmask,
":": executeBuiltinColon,
}
# To avoid deadlock, we use a single stderr stream for piped
@@ -740,7 +754,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
# env FOO=1 llc < %s | env BAR=2 llvm-mc | FileCheck %s
# env FOO=1 %{another_env_plus_cmd} | FileCheck %s
if cmd_shenv is shenv:
- cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env)
+ cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env, shenv.umask)
args = updateEnv(cmd_shenv, args)
if not args:
raise InternalShellError(j, "Error: 'env' requires a" " subcommand")
@@ -884,6 +898,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
close_fds=kUseCloseFDs,
universal_newlines=True,
errors="replace",
+ umask=cmd_shenv.umask,
)
)
proc_not_counts.append(not_count)
|
@llvm/pr-subscribers-testing-tools Author: Jay Foad (jayfoad) ChangesThis allows a few more tests to use lit's internal shell. Full diff: https://github.com/llvm/llvm-project/pull/94621.diff 4 Files Affected:
diff --git a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
index a95d1c0aafa21..fdcba4dcd666b 100644
--- a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
@@ -3,7 +3,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
index 8f4993f4f3d29..66a481a2230d1 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
@@ -6,7 +6,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
index 376e33a217819..f4d3099056168 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
@@ -4,7 +4,6 @@
## Windows has no umask so this test makes no sense, nor would
## it work because there is no umask(1) in a Windows environment
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: rm -f %t
# RUN: touch %t
diff --git a/llvm/utils/lit/lit/TestRunner.py b/llvm/utils/lit/lit/TestRunner.py
index da7fa86fd3917..d2627728eb09e 100644
--- a/llvm/utils/lit/lit/TestRunner.py
+++ b/llvm/utils/lit/lit/TestRunner.py
@@ -87,10 +87,11 @@ class ShellEnvironment(object):
we maintain a dir stack for pushd/popd.
"""
- def __init__(self, cwd, env):
+ def __init__(self, cwd, env, umask=-1):
self.cwd = cwd
self.env = dict(env)
self.dirStack = []
+ self.umask = umask
def change_dir(self, newdir):
if os.path.isabs(newdir):
@@ -565,6 +566,18 @@ class SHFILEOPSTRUCTW(Structure):
return ShellCommandResult(cmd, "", stderr.getvalue(), exitCode, False)
+def executeBuiltinUmask(cmd, shenv):
+ """executeBuiltinUmask - Change the current umask."""
+ if len(cmd.args) != 2:
+ raise InternalShellError(cmd, "'umask' supports only one argument")
+ try:
+ # Update the umask in the parent environment.
+ shenv.umask = int(cmd.args[1], 8)
+ except ValueError as err:
+ raise InternalShellError(cmd, "Error: 'umask': %s" % str(err))
+ return ShellCommandResult(cmd, "", "", 0, False)
+
+
def executeBuiltinColon(cmd, cmd_shenv):
"""executeBuiltinColon - Discard arguments and exit with status 0."""
return ShellCommandResult(cmd, "", "", 0, False)
@@ -719,6 +732,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
"popd": executeBuiltinPopd,
"pushd": executeBuiltinPushd,
"rm": executeBuiltinRm,
+ "umask": executeBuiltinUmask,
":": executeBuiltinColon,
}
# To avoid deadlock, we use a single stderr stream for piped
@@ -740,7 +754,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
# env FOO=1 llc < %s | env BAR=2 llvm-mc | FileCheck %s
# env FOO=1 %{another_env_plus_cmd} | FileCheck %s
if cmd_shenv is shenv:
- cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env)
+ cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env, shenv.umask)
args = updateEnv(cmd_shenv, args)
if not args:
raise InternalShellError(j, "Error: 'env' requires a" " subcommand")
@@ -884,6 +898,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
close_fds=kUseCloseFDs,
universal_newlines=True,
errors="replace",
+ umask=cmd_shenv.umask,
)
)
proc_not_counts.append(not_count)
|
@llvm/pr-subscribers-llvm-binary-utilities Author: Jay Foad (jayfoad) ChangesThis allows a few more tests to use lit's internal shell. Full diff: https://github.com/llvm/llvm-project/pull/94621.diff 4 Files Affected:
diff --git a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
index a95d1c0aafa21..fdcba4dcd666b 100644
--- a/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-dwarfutil/ELF/X86/mirror-permissions-unix.test
@@ -3,7 +3,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
index 8f4993f4f3d29..66a481a2230d1 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
@@ -6,7 +6,6 @@
## Setting the umask to 0 ensures deterministic permissions across
## test environments.
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: touch %t
# RUN: chmod 0777 %t
diff --git a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
index 376e33a217819..f4d3099056168 100644
--- a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
+++ b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test
@@ -4,7 +4,6 @@
## Windows has no umask so this test makes no sense, nor would
## it work because there is no umask(1) in a Windows environment
# UNSUPPORTED: system-windows
-# REQUIRES: shell
# RUN: rm -f %t
# RUN: touch %t
diff --git a/llvm/utils/lit/lit/TestRunner.py b/llvm/utils/lit/lit/TestRunner.py
index da7fa86fd3917..d2627728eb09e 100644
--- a/llvm/utils/lit/lit/TestRunner.py
+++ b/llvm/utils/lit/lit/TestRunner.py
@@ -87,10 +87,11 @@ class ShellEnvironment(object):
we maintain a dir stack for pushd/popd.
"""
- def __init__(self, cwd, env):
+ def __init__(self, cwd, env, umask=-1):
self.cwd = cwd
self.env = dict(env)
self.dirStack = []
+ self.umask = umask
def change_dir(self, newdir):
if os.path.isabs(newdir):
@@ -565,6 +566,18 @@ class SHFILEOPSTRUCTW(Structure):
return ShellCommandResult(cmd, "", stderr.getvalue(), exitCode, False)
+def executeBuiltinUmask(cmd, shenv):
+ """executeBuiltinUmask - Change the current umask."""
+ if len(cmd.args) != 2:
+ raise InternalShellError(cmd, "'umask' supports only one argument")
+ try:
+ # Update the umask in the parent environment.
+ shenv.umask = int(cmd.args[1], 8)
+ except ValueError as err:
+ raise InternalShellError(cmd, "Error: 'umask': %s" % str(err))
+ return ShellCommandResult(cmd, "", "", 0, False)
+
+
def executeBuiltinColon(cmd, cmd_shenv):
"""executeBuiltinColon - Discard arguments and exit with status 0."""
return ShellCommandResult(cmd, "", "", 0, False)
@@ -719,6 +732,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
"popd": executeBuiltinPopd,
"pushd": executeBuiltinPushd,
"rm": executeBuiltinRm,
+ "umask": executeBuiltinUmask,
":": executeBuiltinColon,
}
# To avoid deadlock, we use a single stderr stream for piped
@@ -740,7 +754,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
# env FOO=1 llc < %s | env BAR=2 llvm-mc | FileCheck %s
# env FOO=1 %{another_env_plus_cmd} | FileCheck %s
if cmd_shenv is shenv:
- cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env)
+ cmd_shenv = ShellEnvironment(shenv.cwd, shenv.env, shenv.umask)
args = updateEnv(cmd_shenv, args)
if not args:
raise InternalShellError(j, "Error: 'env' requires a" " subcommand")
@@ -884,6 +898,7 @@ def _executeShCmd(cmd, shenv, results, timeoutHelper):
close_fds=kUseCloseFDs,
universal_newlines=True,
errors="replace",
+ umask=cmd_shenv.umask,
)
)
proc_not_counts.append(not_count)
|
def executeBuiltinUmask(cmd, shenv): | ||
"""executeBuiltinUmask - Change the current umask.""" | ||
if len(cmd.args) != 2: | ||
raise InternalShellError(cmd, "'umask' supports only one argument") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
raise InternalShellError(cmd, "'umask' supports only one argument") | |
raise InternalShellError(cmd, "'umask' requires exactly one argument") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In this patch I was just being consistent with the other builtins that check the number of arguments. I have no objection to changing the wording for all of them, in a different patch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consistency is good. I don't feel strongly enough about it to request a separate comment-fix patch.
## Windows has no umask so this test makes no sense, nor would | ||
## it work because there is no umask(1) in a Windows environment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Windows has no umask so this test makes no sense, nor would | |
## it work because there is no umask(1) in a Windows environment | |
## Windows has no umask so this test makes no sense. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems fine to me. I didn't write the original comment. Perhaps it was trying to explain that Windows has neither umask(1) nor umask(2) ?!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably it was. But that's not relevant anymore now that the internal shell has umask.
You probably want to add something within lit's own test suite to exercise the umask function. Might also want to show it fails cleanly on Windows. |
Done.
My umask implementation in lit just builds on the "umask" argument to Python's subprocess.Popen. I doubt that has any useful effect on Windows, but I don't explicitly check for that. It's still up to anyone who writes a test using umask to add something like |
That's not friendly to test writers IMO. If we know it won't work, we might as well just fail saying so up front, and save people having to research and diagnose mystery failures on Windows when they don't have Windows locally to try it on. |
I don't understand what kind of diagnostic you want. If I'm on Linux and I write a test that uses umask, I do not want it to fail with "error: this would not work on Windows". |
Also note I'm not changing the status quo in this regard. People already write tests that use umask, and don't immediately find out that they won't work on Windows. |
No, the umask implementation should say something like |
The status quo is that any test using umask needs |
I see. Done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you can, run the umask test on Windows, I'm pretty sure you want the change I marked.
Otherwise LGTM.
llvm/utils/lit/tests/shtest-umask.py
Outdated
# CHECK: # | 'umask' supports only one argument | ||
|
||
# CHECK: Total Discovered Tests: 3 | ||
# CHECK: {{Passed|Unresolved}}: 1 {{\([0-9]*\.[0-9]*%\)}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# CHECK: {{Passed|Unresolved}}: 1 {{\([0-9]*\.[0-9]*%\)}} | |
# CHECK: {{Passed|Unsupported}}: 1 {{\([0-9]*\.[0-9]*%\)}} |
"Unresolved" means something else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I think you're right, but then I don't understand why CI testing for this PR passed on Windows.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does CI run the lit tests? I downloaded the log and I don't see "shtest-umask" in it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, thanks, it runs ninja check-clang check-clang-tools check-lld check-llvm check-mlir check-polly
but that does not include check-lit
:-(
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Working on getting the test to work in my environment. Taking longer than I expected.
|
||
config.name = "shtest-umask" | ||
config.suffixes = [".txt"] | ||
config.test_format = lit.formats.ShTest(execute_external=False) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You'll need to add this:
if sys.platform.startswith("win") or sys.platform.startswith("cygwin"):
config.available_features.add("system-windows")
because this sandboxed configuration doesn't run the parent lit.cfg. But with that, and changing the expectation in shtest-umask.py to Unsupported
, it should work. (A hacked-up version does work in my Windows environment.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still needs this suggested change, otherwise good to go.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. Can you please verify that it works? It's pretty annoying that the bots do not run check-lit
and I have no access to a Windows box that can build LLVM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bots not running check-lit
does seem like an oversight. I will apply your patch and try it out tomorrow.
llvm/utils/lit/lit/TestRunner.py
Outdated
self.dirStack = [] | ||
self.umask = umask |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just a nit but I'd reorder these two fields to match the order of arguments.
self.dirStack = [] | |
self.umask = umask | |
self.umask = umask | |
self.dirStack = [] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done, thanks.
Yes. |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/129/builds/1576 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/138/builds/1010 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/117/builds/541 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/177/builds/1308 Here is the relevant piece of the build log for the reference:
|
This reverts commit 9f6dd1f. Reverting to investigate buildbot failures e.g.: "new failure on builder ppc64le-mlir-rhel-clang running on ppc64le-mlir-rhel-test"
Ugh. I have reverted to investigate the buildbot failures. |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/12/builds/1487 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/30/builds/1573 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/73/builds/1467 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/46/builds/1329 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/174/builds/1324 Here is the relevant piece of the build log for the reference:
|
LLVM can be built with Python 3.8, but the |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/154/builds/1123 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/65/builds/1135 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/176/builds/860 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/95/builds/1027 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/168/builds/849 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/125/builds/571 Here is the relevant piece of the build log for the reference:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/76/builds/804 Here is the relevant piece of the build log for the reference:
|
This allows a few more tests to use lit's internal shell.
This reverts commit 9f6dd1f. Reverting to investigate buildbot failures e.g.: "new failure on builder ppc64le-mlir-rhel-clang running on ppc64le-mlir-rhel-test"
…e986d8413 Local branch amd-gfx b65e986 Merged main:997e5e870337e4a25b82be5b01e8f7675c350070 into amd-gfx:47ff60c4c995 Remote branch main faa4e35 Revert "[lit] Implement builtin umask (llvm#94621)"
This reverts commit faa4e35. This was originally reverted because it was using a Python 3.9 feature (umask in subprocess.Popen) when LLVM only requires Python 3.8. This patch uses os.umask instead, which has been around for longer.
This allows a few more tests to use lit's internal shell.