regres: Update to LLVM 17.0.6
LLVM 10 is ancient, and doesn't run on more modern ubuntu versions due to out of date shared object dependencies.
Change-Id: I1cb5d9580721d542126becb8e63ca629e75c9eb8
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/73488
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@google.com>
Tested-by: Shahbaz Youssefi <syoussefi@google.com>
diff --git a/tests/regres/cmd/regres/main.go b/tests/regres/cmd/regres/main.go
index 6f014a3..f51b63e 100644
--- a/tests/regres/cmd/regres/main.go
+++ b/tests/regres/cmd/regres/main.go
@@ -80,7 +80,7 @@
var (
numParallelTests = runtime.NumCPU()
- llvmVersion = llvm.Version{Major: 10}
+ llvmVersion = llvm.Version{Major: 17, Point: 6}
cacheDir = flag.String("cache", "cache", "path to the output cache directory")
gerritEmail = flag.String("email", "$SS_REGRES_EMAIL", "gerrit email address for posting regres results")
diff --git a/tests/regres/llvm/llvm.go b/tests/regres/llvm/llvm.go
index 8b55964..7d1d61b 100644
--- a/tests/regres/llvm/llvm.go
+++ b/tests/regres/llvm/llvm.go
@@ -32,7 +32,7 @@
"swiftshader.googlesource.com/SwiftShader/tests/regres/util"
)
-const maxLLVMVersion = 10
+const maxLLVMVersion = 17
// Version holds the build version information of an LLVM toolchain.
type Version struct {
@@ -83,20 +83,22 @@
return nil, fmt.Errorf("Could not download LLVM from %v: %v", url, err)
}
- sigfile, err := os.Open(sig)
- if err != nil {
- return nil, fmt.Errorf("Couldn't open file '%s': %v", sig, err)
- }
- defer sigfile.Close()
+ if sig != "" {
+ sigfile, err := os.Open(sig)
+ if err != nil {
+ return nil, fmt.Errorf("Couldn't open file '%s': %v", sig, err)
+ }
+ defer sigfile.Close()
- keyfile, err := os.Open(key)
- if err != nil {
- return nil, fmt.Errorf("Couldn't open file '%s': %v", key, err)
- }
- defer keyfile.Close()
+ keyfile, err := os.Open(key)
+ if err != nil {
+ return nil, fmt.Errorf("Couldn't open file '%s': %v", key, err)
+ }
+ defer keyfile.Close()
- if err := util.CheckPGP(bytes.NewReader(content), sigfile, keyfile); err != nil {
- return nil, err
+ if err := util.CheckPGP(bytes.NewReader(content), sigfile, keyfile); err != nil {
+ return nil, err
+ }
}
return content, nil
}
@@ -123,6 +125,20 @@
default:
return "", "", "", fmt.Errorf("Unsupported OS: %v", os)
}
+ case Version{17, 0, 0}:
+ switch os {
+ case "linux":
+ url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.6/clang+llvm-17.0.6-x86_64-linux-gnu-ubuntu-22.04.tar.xz"
+ return
+ case "darwin":
+ url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.6/clang+llvm-17.0.6-arm64-apple-darwin22.0.tar.xz"
+ return
+ case "windows":
+ url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.6/LLVM-17.0.6-win64.exe"
+ return
+ default:
+ return "", "", "", fmt.Errorf("Unsupported OS: %v", os)
+ }
default:
return "", "", "", fmt.Errorf("Unknown download for LLVM %v", v)
}