Skip to content

Commit 63e0510

Browse files
Add hw intrinsics pipeline for linux_arm64 (#127482)
Current hw-intrinsics pipeline runs ARM64 codegen tests on OSX, which doesn't exercise SVE. So we tend to manually kick off jitstress for every change that touches `hwintrinsiccodegenarm64.cpp` I don't want to just add "linux_arm64" to the existing hw intrinsics pipeline because those machines are at a premium. So instead, I'm adding a new pipeline that triggers only off arm64 jit source files, to reduce machine pool usage
1 parent 499f5c6 commit 63e0510

3 files changed

Lines changed: 92 additions & 109 deletions

File tree

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
trigger: none
2+
pr:
3+
branches:
4+
include:
5+
- main
6+
paths:
7+
include:
8+
- eng/pipelines/coreclr/hardware-intrinsics-arm64.yml
9+
- eng/pipelines/coreclr/templates/jit-hardware-intrinsics-common.yml
10+
- src/coreclr/jit/*arm64*
11+
12+
variables:
13+
- template: /eng/pipelines/common/variables.yml
14+
- template: /eng/pipelines/helix-platforms.yml
15+
16+
extends:
17+
template: /eng/pipelines/common/templates/pipeline-with-resources.yml
18+
parameters:
19+
isOfficialBuild: false
20+
stages:
21+
- stage: Build
22+
jobs:
23+
- template: /eng/pipelines/coreclr/templates/jit-hardware-intrinsics-common.yml
24+
parameters:
25+
platforms:
26+
- linux_arm64
27+
testBuildArgs: '-tree:JIT/HardwareIntrinsics'

eng/pipelines/coreclr/hardware-intrinsics.yml

Lines changed: 4 additions & 109 deletions
Original file line numberDiff line numberDiff line change
@@ -21,122 +21,17 @@ extends:
2121
stages:
2222
- stage: Build
2323
jobs:
24-
- template: /eng/pipelines/common/platform-matrix.yml
24+
- template: /eng/pipelines/coreclr/templates/jit-hardware-intrinsics-common.yml
2525
parameters:
26-
jobTemplate: /eng/pipelines/common/global-build-job.yml
27-
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
28-
buildConfig: Release
2926
platforms:
3027
- windows_x86
3128
- windows_x64
32-
variables:
33-
- name: timeoutPerTestInMinutes
34-
value: 60
35-
- name: timeoutPerTestCollectionInMinutes
36-
value: 180
37-
jobParameters:
38-
testGroup: outerloop
39-
nameSuffix: CoreCLR
40-
buildArgs: -s clr+libs -c $(_BuildConfig)
41-
timeoutInMinutes: 360
42-
postBuildSteps:
43-
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
44-
parameters:
45-
creator: dotnet-bot
46-
testBuildArgs: 'tree JIT/HardwareIntrinsics'
47-
testRunNamePrefixSuffix: CoreCLR
48-
extraVariablesTemplates:
49-
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
50-
parameters:
51-
testGroup: outerloop
29+
testBuildArgs: 'tree JIT/HardwareIntrinsics'
5230

53-
- template: /eng/pipelines/common/platform-matrix.yml
31+
- template: /eng/pipelines/coreclr/templates/jit-hardware-intrinsics-common.yml
5432
parameters:
55-
jobTemplate: /eng/pipelines/common/global-build-job.yml
56-
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
57-
buildConfig: Release
5833
platforms:
5934
- linux_arm
6035
- linux_x64
6136
- osx_arm64
62-
variables:
63-
- name: timeoutPerTestInMinutes
64-
value: 60
65-
- name: timeoutPerTestCollectionInMinutes
66-
value: 180
67-
jobParameters:
68-
testGroup: outerloop
69-
nameSuffix: CoreCLR
70-
buildArgs: -s clr+libs -c $(_BuildConfig)
71-
timeoutInMinutes: 360
72-
postBuildSteps:
73-
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
74-
parameters:
75-
creator: dotnet-bot
76-
testBuildArgs: '-tree:JIT/HardwareIntrinsics'
77-
testRunNamePrefixSuffix: CoreCLR
78-
extraVariablesTemplates:
79-
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
80-
parameters:
81-
testGroup: outerloop
82-
83-
- template: /eng/pipelines/common/platform-matrix.yml
84-
parameters:
85-
jobTemplate: /eng/pipelines/common/global-build-job.yml
86-
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
87-
buildConfig: Release
88-
platforms:
89-
- windows_x86
90-
- windows_x64
91-
variables:
92-
- name: timeoutPerTestInMinutes
93-
value: 60
94-
- name: timeoutPerTestCollectionInMinutes
95-
value: 180
96-
jobParameters:
97-
testGroup: outerloop
98-
nameSuffix: NativeAOT
99-
buildArgs: -s clr.aot+libs.native+libs.sfx -c $(_BuildConfig)
100-
timeoutInMinutes: 360
101-
postBuildSteps:
102-
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
103-
parameters:
104-
creator: dotnet-bot
105-
testBuildArgs: 'nativeaot tree JIT/HardwareIntrinsics'
106-
testRunNamePrefixSuffix: NativeAOT
107-
nativeAotTest: true
108-
extraVariablesTemplates:
109-
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
110-
parameters:
111-
testGroup: outerloop
112-
113-
- template: /eng/pipelines/common/platform-matrix.yml
114-
parameters:
115-
jobTemplate: /eng/pipelines/common/global-build-job.yml
116-
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
117-
buildConfig: Release
118-
platforms:
119-
- linux_arm
120-
- linux_x64
121-
- osx_arm64
122-
variables:
123-
- name: timeoutPerTestInMinutes
124-
value: 60
125-
- name: timeoutPerTestCollectionInMinutes
126-
value: 180
127-
jobParameters:
128-
testGroup: outerloop
129-
nameSuffix: NativeAOT
130-
buildArgs: -s clr.aot+libs.native+libs.sfx -c $(_BuildConfig)
131-
timeoutInMinutes: 360
132-
postBuildSteps:
133-
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
134-
parameters:
135-
creator: dotnet-bot
136-
testBuildArgs: 'nativeaot -tree:JIT/HardwareIntrinsics'
137-
testRunNamePrefixSuffix: NativeAOT
138-
nativeAotTest: true
139-
extraVariablesTemplates:
140-
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
141-
parameters:
142-
testGroup: outerloop
37+
testBuildArgs: '-tree:JIT/HardwareIntrinsics'
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
parameters:
2+
- name: platforms
3+
type: object
4+
- name: testBuildArgs
5+
type: string
6+
7+
jobs:
8+
- template: /eng/pipelines/common/platform-matrix.yml
9+
parameters:
10+
jobTemplate: /eng/pipelines/common/global-build-job.yml
11+
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
12+
buildConfig: Release
13+
platforms: ${{ parameters.platforms }}
14+
variables:
15+
- name: timeoutPerTestInMinutes
16+
value: 60
17+
- name: timeoutPerTestCollectionInMinutes
18+
value: 180
19+
jobParameters:
20+
testGroup: outerloop
21+
nameSuffix: CoreCLR
22+
buildArgs: -s clr+libs -c $(_BuildConfig)
23+
timeoutInMinutes: 360
24+
postBuildSteps:
25+
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
26+
parameters:
27+
creator: dotnet-bot
28+
testBuildArgs: ${{ parameters.testBuildArgs }}
29+
testRunNamePrefixSuffix: CoreCLR
30+
extraVariablesTemplates:
31+
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
32+
parameters:
33+
testGroup: outerloop
34+
35+
- template: /eng/pipelines/common/platform-matrix.yml
36+
parameters:
37+
jobTemplate: /eng/pipelines/common/global-build-job.yml
38+
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
39+
buildConfig: Release
40+
platforms: ${{ parameters.platforms }}
41+
variables:
42+
- name: timeoutPerTestInMinutes
43+
value: 60
44+
- name: timeoutPerTestCollectionInMinutes
45+
value: 180
46+
jobParameters:
47+
testGroup: outerloop
48+
nameSuffix: NativeAOT
49+
buildArgs: -s clr.aot+libs.native+libs.sfx -c $(_BuildConfig)
50+
timeoutInMinutes: 360
51+
postBuildSteps:
52+
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml
53+
parameters:
54+
creator: dotnet-bot
55+
testBuildArgs: nativeaot ${{ parameters.testBuildArgs }}
56+
testRunNamePrefixSuffix: NativeAOT
57+
nativeAotTest: true
58+
extraVariablesTemplates:
59+
- template: /eng/pipelines/common/templates/runtimes/test-variables.yml
60+
parameters:
61+
testGroup: outerloop

0 commit comments

Comments
 (0)