-
Notifications
You must be signed in to change notification settings - Fork 204
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
[NativeAOT-LLVM] Merge apr 24 #2543
Changes from 45 commits
e1b81d7
1fecfbc
13a9036
06650b7
ddb739e
928ffaa
305a52d
903bc01
2c08933
25f3883
dc553fe
78a895f
7f555e0
76c157f
22fcf9a
6d91b3e
9038180
0c30a1b
b432fc6
9856094
ba84d1e
be1b035
68193c4
9083a3b
05f5a50
b42c516
e04d9aa
cb36fdd
8c9f510
312eb18
5f7e495
969d424
503970c
475dd02
395282c
8c68710
d4c6e95
c46410f
748b61e
3a447e4
765ca4e
3ba9223
f390243
782c2ee
f390af4
3f7ffdd
40a6b1d
a57fa6f
ddbb712
330b13f
a9ed416
fd22b92
788f572
2a846ac
c4796a3
78c2c98
1fa699e
ccc2d3b
d7c4f02
91ee24a
e203933
12f5464
71e989d
e612bf4
e74f170
a5b9a6a
d80a09f
1f00cda
cb63e02
71177d9
7c14f71
e753712
2567a94
f51d705
6561e7c
83b0d93
85d60b7
8e95f22
7486be8
34d13b2
0323995
316fc16
869dfb7
fb5e93a
d1cc577
b7d91f2
cc7bf83
1949bd2
e3dc83a
ec4437b
c5200b6
c7a3acb
0fd23aa
a027afb
dc01e99
4039b45
282891d
ab2bd48
59d9749
10e87bc
991a054
ef86661
f37a5c1
93483ba
1ec64a7
43dfccd
a8daf55
254012e
995989e
e020a93
85e8f68
e0884ed
0b542b9
0c0b8b2
b66d44a
c5bead6
8763f6d
3bae822
0c2e8d2
e5cf690
8618814
d0023cf
5c3bfeb
dd1b8b5
b040ed6
e21bdfe
eb73369
7c030e8
89bd910
95f68f5
71f45aa
c08bd7b
48ea62a
c19d68e
44b1e87
f558631
862c82f
1c19033
ac7f025
95b67ed
01f039c
5c4e2a3
470df61
a72ef3e
5087f12
e4d9e41
b4765bd
223e9e7
d96f224
ffb2578
e610649
cf9b28c
195b7a8
e629779
b5fbdeb
c3a2141
cf38265
9a1da4d
9f3058f
48aa85f
16492b9
6ae3df6
96d5a66
09e1418
7f2be68
960849b
d86b84f
beac274
1a7904e
a971763
997f09c
7def0b7
f91b911
ddae9bd
4c20b21
b973027
b76baa8
068ba8e
d79a753
0c92024
afbebfe
e1f5378
41b1091
d9dcc58
55535ed
ed92ec4
1f698e7
3515c7a
92afc71
3e98877
fc9ab41
4ce3525
f6237bc
2496619
995409f
7c4fc07
988cfcf
41670f5
b8964d8
e0ff36d
9b57a26
02fb6ae
94c610d
1f61c37
4561969
8f8c9b4
3495b31
253eee5
d426ad7
d1ba24e
0d40e49
24ded9b
24d689c
326ec42
94b3775
570e02f
c3cd018
55ba6d0
c452e80
d523642
8bfa24d
906987e
4c20567
c5302eb
389db64
e874327
3368db8
8201a5d
e668195
8ba6c2a
eaa1ef8
d49dab8
2b07e36
18d5fd9
e62bb59
5af1c97
b924ab4
8e12a31
03caca9
371e46c
c3bc4ee
61e9367
f784f3e
bf1eb7e
d612d52
bbe432a
53cd4b8
f04e208
4f15f91
65f5b4a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
@@ -49,139 +49,71 @@ extends: | |||||||||
stages: | ||||||||||
- stage: Build | ||||||||||
jobs: | ||||||||||
<<<<<<< HEAD | ||||||||||
# | ||||||||||
# Build with Release libraries and Debug runtime | ||||||||||
# | ||||||||||
- ${{ if ne(variables.isOfficialBuild, true) }}: | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
buildConfig: Debug | ||||||||||
platforms: | ||||||||||
# - Linux_x64 | ||||||||||
- windows_x64 | ||||||||||
- OSX_x64 | ||||||||||
- Browser_wasm_win | ||||||||||
- wasi_wasm_win | ||||||||||
jobParameters: | ||||||||||
timeoutInMinutes: 300 | ||||||||||
testGroup: innerloop | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -lc Release -rc Debug | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
librariesConfiguration: Release | ||||||||||
|
||||||||||
# | ||||||||||
# Build with Debug libraries and Checked runtime | ||||||||||
# | ||||||||||
- ${{ if ne(variables.isOfficialBuild, true) }}: | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
buildConfig: Checked | ||||||||||
platforms: | ||||||||||
# - linux_x64 | ||||||||||
- windows_x64 | ||||||||||
jobParameters: | ||||||||||
timeoutInMinutes: 100 | ||||||||||
testGroup: innerloop | ||||||||||
buildArgs: -s clr+libs+host+packs -c debug -runtimeConfiguration Checked | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
uploadRuntimeTests: true | ||||||||||
librariesConfiguration: Debug | ||||||||||
|
||||||||||
# | ||||||||||
# Build with Release libraries and Release runtime (used for official builds) - Wasm | ||||||||||
# | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
buildConfig: Release | ||||||||||
platforms: | ||||||||||
# - linux_x64 # Tests fail with a few errors, e.g. System.BadImageFormatException: Read out of bounds. TODO-LLVM try to reinstate when more merged | ||||||||||
# - linux_musl_x64 | ||||||||||
# - linux_arm64 # ILCompiler for LLVM depends on libLLVM.runtime.linux-arm64 with version (>= 11.0.0) which is missing https://github.com/microsoft/LLVMSharp/issues/177. TODO: reinstate when we remove LLVMSharp dependency | ||||||||||
# - linux_arm # ILCompiler for LLVM depends on libLLVM.runtime.linux-arm64 with version (>= 11.0.0) which is missing https://github.com/microsoft/LLVMSharp/issues/177. TODO: reinstate when we remove LLVMSharp dependency | ||||||||||
# - linux_musl_arm64 # ILCompiler for LLVM depends on libLLVM.runtime.linux-arm64 with version (>= 11.0.0) which is missing https://github.com/microsoft/LLVMSharp/issues/177. TODO: reinstate when we remove LLVMSharp dependency | ||||||||||
# - windows_x64 # Part of the combined (target + host) WASM build below | ||||||||||
- windows_arm64 | ||||||||||
- OSX_x64 | ||||||||||
- Browser_wasm_win | ||||||||||
- wasi_wasm_win | ||||||||||
jobParameters: | ||||||||||
timeoutInMinutes: 300 | ||||||||||
isOfficialBuild: ${{ variables.isOfficialBuild }} | ||||||||||
testGroup: innerloop | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
isOfficialBuild: ${{ variables.isOfficialBuild }} | ||||||||||
uploadLibrariesTests: ${{ eq(variables.isOfficialBuild, false) }} | ||||||||||
uploadIntermediateArtifacts: ${{ variables.isOfficialBuild }} | ||||||||||
librariesConfiguration: Release | ||||||||||
${{ if eq(variables.isOfficialBuild, false) }}: | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c $(_BuildConfig) /p:ArchiveTests=true | ||||||||||
${{ if eq(variables.isOfficialBuild, true) }}: | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c $(_BuildConfig) | ||||||||||
======= | ||||||||||
- ${{ if ne(variables.isOfficialBuild, true) }}: | ||||||||||
# | ||||||||||
# Build the whole product with Checked CoreCLR and run runtime tests | ||||||||||
# Build and test with Debug libraries and Debug runtime | ||||||||||
# | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml | ||||||||||
buildConfig: checked | ||||||||||
buildConfig: debug | ||||||||||
platforms: | ||||||||||
- linux_x64 | ||||||||||
# - linux_x64 | ||||||||||
- osx_x64 | ||||||||||
- windows_x64 | ||||||||||
- Browser_wasm_win | ||||||||||
- wasi_wasm_win | ||||||||||
jobParameters: | ||||||||||
timeoutInMinutes: 200 | ||||||||||
buildArgs: -s clr+libs+hosts+packs -c debug -rc $(_BuildConfig) | ||||||||||
timeoutInMinutes: 300 | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c debug -rc $(_BuildConfig) | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
creator: dotnet-bot | ||||||||||
testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig) | ||||||||||
librariesConfiguration: Debug | ||||||||||
|
||||||||||
# | ||||||||||
# Build the whole product with Release CoreCLR and run libraries tests | ||||||||||
# Build and test with Debug libraries and Checked runtime | ||||||||||
# | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml | ||||||||||
buildConfig: release | ||||||||||
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml | ||||||||||
buildConfig: checked | ||||||||||
platforms: | ||||||||||
- linux_x64 | ||||||||||
# - linux_x64 | ||||||||||
- windows_x64 | ||||||||||
jobParameters: | ||||||||||
timeoutInMinutes: 180 | ||||||||||
buildArgs: -s clr+libs+libs.tests+hosts+packs -c $(_BuildConfig) /p:ArchiveTests=true | ||||||||||
timeoutInMinutes: 300 | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c debug -rc $(_BuildConfig) | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/libraries/helix.yml | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
creator: dotnet-bot | ||||||||||
testRunNamePrefixSuffix: Libraries_$(_BuildConfig) | ||||||||||
uploadRuntimeTests: true | ||||||||||
librariesConfiguration: Debug | ||||||||||
|
||||||||||
# | ||||||||||
# Build and test libraries AllConfigurations | ||||||||||
# Build and test with Release libraries and Release runtime | ||||||||||
# | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} | ||||||||||
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml | ||||||||||
buildConfig: release | ||||||||||
platforms: | ||||||||||
# - linux_x64 | ||||||||||
- osx_x64 | ||||||||||
- windows_x64 | ||||||||||
- Browser_wasm_win | ||||||||||
- wasi_wasm_win | ||||||||||
jobParameters: | ||||||||||
buildArgs: -test -s tools+libs+libs.tests -allConfigurations -c $(_BuildConfig) /p:TestAssemblies=false /p:TestPackages=true | ||||||||||
nameSuffix: Libraries_AllConfigurations | ||||||||||
timeoutInMinutes: 150 | ||||||||||
timeoutInMinutes: 300 | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c $(_BuildConfig) /p:ArchiveTests=true | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
librariesConfiguration: Release | ||||||||||
|
||||||||||
- ${{ else }}: | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In this |
||||||||||
# | ||||||||||
|
@@ -193,39 +125,28 @@ extends: | |||||||||
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml | ||||||||||
buildConfig: release | ||||||||||
platforms: | ||||||||||
- linux_x64 | ||||||||||
# - linux_x64 | ||||||||||
- windows_x64 | ||||||||||
jobParameters: | ||||||||||
isOfficialBuild: true | ||||||||||
timeoutInMinutes: 180 | ||||||||||
timeoutInMinutes: 380 | ||||||||||
buildArgs: -s clr+libs+hosts+packs -c $(_BuildConfig) | ||||||||||
postBuildSteps: | ||||||||||
# Upload the results. | ||||||||||
- template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml | ||||||||||
parameters: | ||||||||||
name: $(osGroup)$(osSubgroup)_$(archType) | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
|
||||||||||
# | ||||||||||
# Build libraries AllConfigurations for packages | ||||||||||
# | ||||||||||
- template: /eng/pipelines/common/platform-matrix.yml | ||||||||||
parameters: | ||||||||||
jobTemplate: /eng/pipelines/common/global-build-job.yml | ||||||||||
buildConfig: Release | ||||||||||
platforms: | ||||||||||
- windows_x64 | ||||||||||
jobParameters: | ||||||||||
buildArgs: -s tools+libs -allConfigurations -c $(_BuildConfig) /p:TestAssemblies=false /p:TestPackages=true | ||||||||||
nameSuffix: Libraries_AllConfigurations | ||||||||||
isOfficialBuild: true | ||||||||||
postBuildSteps: | ||||||||||
- template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml | ||||||||||
- template: /eng/pipelines/runtimelab/runtimelab-post-build-steps.yml | ||||||||||
parameters: | ||||||||||
name: Libraries_AllConfigurations | ||||||||||
timeoutInMinutes: 95 | ||||||||||
>>>>>>> runtime/main | ||||||||||
isOfficialBuild: true | ||||||||||
uploadIntermediateArtifacts: true | ||||||||||
librariesConfiguration: Release | ||||||||||
${{ if eq(variables.isOfficialBuild, false) }}: | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c release /p:ArchiveTests=true | ||||||||||
${{ if eq(variables.isOfficialBuild, true) }}: | ||||||||||
buildArgs: -s clr.aot+libs+nativeaot.packages -c release | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, I don't understand this. Shouldn't this be above, i. e. |
||||||||||
|
||||||||||
- ${{ if eq(variables.isOfficialBuild, true) }}: | ||||||||||
- template: /eng/pipelines/official/stages/publish.yml | ||||||||||
parameters: | ||||||||||
isOfficialBuild: true | ||||||||||
isOfficialBuild: true |
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.
Was this always incorrect or did something change (I am guessing the former)? Does
Include="$(CoreCLRNativeArtifactsPath)src\es6\*.js"
below need the same fix?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.
For a reason I don't remember anymore I have crafted it this way https://github.com/dotnet/runtimelab/pull/2453/files#diff-e39b13480e09094a7907aaf2c25d8bec6025771736925298c71182d6332f0956. If the correct approach is to use
LibrariesNativeArtifactsPath
, then we can drop definition ofCoreCLRNativeArtifactsPath
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.
Thank you for pointing to that commit - it actually looks wrong to me to use
LibrariesNativeArtifactsPath
here now, since it picks up the configuration (Debug
/Release
) from libraries, while these are runtime files and so should pick up CoreCLR's configuration (as the before-merge code does).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.
Do you want me to revert this and confirm the error ?
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.
It would be useful to understand what the bug here is, yes.