Skip to content
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

[draft] Raw_dylib codegen #71497

Closed
wants to merge 10 commits into from
Closed

Conversation

tinaun
Copy link
Contributor

@tinaun tinaun commented Apr 24, 2020

for #58713

i don't quite know if this is how i should structure the code, but it seems to work

current progress

  • idata layout generation
  • stub function generation

issues

  • every pointer type here should be a 32 bit RVA - need to get base address
  • im running into a few llvm assertions (wrong type in array element initializer) - they don't abort the program and the llvm i generate matches what i expect - i can't figure out what im doing wrong here
  • need examples / test cases
  • unsatisfied with the general layout + structure

@rust-highfive
Copy link
Collaborator

r? @estebank

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 24, 2020
@rust-highfive
Copy link
Collaborator

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2020-04-24T05:29:41.1803168Z ========================== Starting Command Output ===========================
2020-04-24T05:29:41.1805371Z [command]/bin/bash --noprofile --norc /home/vsts/work/_temp/ec2e9418-fba9-4fc5-b63c-7aaaf5efcffa.sh
2020-04-24T05:29:41.1805613Z 
2020-04-24T05:29:41.1809248Z ##[section]Finishing: Disable git automatic line ending conversion
2020-04-24T05:29:41.1827979Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T05:29:41.1830733Z Task         : Get sources
2020-04-24T05:29:41.1831008Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-24T05:29:41.1831212Z Version      : 1.0.0
2020-04-24T05:29:41.1831352Z Author       : Microsoft
---
2020-04-24T05:29:42.1926479Z ##[command]git remote add origin https://github.com/rust-lang/rust
2020-04-24T05:29:42.1930464Z ##[command]git config gc.auto 0
2020-04-24T05:29:42.1933117Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2020-04-24T05:29:42.1935527Z ##[command]git config --get-all http.proxy
2020-04-24T05:29:42.1940205Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/71497/merge:refs/remotes/pull/71497/merge
---
2020-04-24T05:31:58.3868765Z  ---> f7353ccad5b1
2020-04-24T05:31:58.3869113Z Step 6/7 : ENV RUN_CHECK_WITH_PARALLEL_QUERIES 1
2020-04-24T05:31:58.3869608Z  ---> Using cache
2020-04-24T05:31:58.3870012Z  ---> ed38efbaa060
2020-04-24T05:31:58.3872659Z Step 7/7 : ENV SCRIPT python3 ../x.py test src/tools/expand-yaml-anchors &&            python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu &&            python3 ../x.py build --stage 0 src/tools/build-manifest &&            python3 ../x.py test --stage 0 src/tools/compiletest &&            python3 ../x.py test src/tools/tidy &&            /scripts/validate-toolstate.sh
2020-04-24T05:31:58.3874559Z  ---> c5008ef7ae8e
2020-04-24T05:31:58.3931415Z Successfully built c5008ef7ae8e
2020-04-24T05:31:58.3959823Z Successfully tagged rust-ci:latest
2020-04-24T05:31:58.4218112Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-24T05:31:58.4218112Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-24T05:31:58.4233917Z Looks like docker image is the same as before, not uploading
2020-04-24T05:32:06.7871115Z [CI_JOB_NAME=mingw-check]
2020-04-24T05:32:06.8068557Z [CI_JOB_NAME=mingw-check]
2020-04-24T05:32:06.8092521Z == clock drift check ==
2020-04-24T05:32:06.8100496Z   local time: Fri Apr 24 05:32:06 UTC 2020
2020-04-24T05:32:07.0972528Z   network time: Fri, 24 Apr 2020 05:32:07 GMT
2020-04-24T05:32:07.0995646Z Starting sccache server...
2020-04-24T05:32:07.1997397Z configure: processing command line
2020-04-24T05:32:07.1997606Z configure: 
2020-04-24T05:32:07.1998774Z configure: rust.parallel-compiler := True
---
2020-04-24T05:35:36.9568354Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-24T05:35:37.0904055Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-24T05:35:37.2678580Z     Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
2020-04-24T05:35:37.3172666Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-24T05:35:37.8294932Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-24T05:35:40.0865032Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-24T05:35:40.5392225Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-04-24T05:35:42.4119155Z     Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
2020-04-24T05:35:42.8077836Z     Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
2020-04-24T05:37:18.9590346Z configure: rust.dist-src        := False
2020-04-24T05:37:18.9590836Z configure: build.locked-deps    := True
2020-04-24T05:37:18.9591333Z configure: rust.debug-assertions := True
2020-04-24T05:37:18.9591853Z configure: build.cargo-native-static := True
2020-04-24T05:37:18.9592441Z configure: build.configure-args := ['--enable-sccache', '--disable-manage-submodu ...
2020-04-24T05:37:18.9593081Z configure: writing `config.toml` in current directory
2020-04-24T05:37:18.9593511Z configure: 
2020-04-24T05:37:18.9593925Z configure: run `python /checkout/x.py --help`
2020-04-24T05:37:18.9594632Z configure: 
---
2020-04-24T05:38:39.1584402Z Hugepagesize:       2048 kB
2020-04-24T05:38:39.1584604Z DirectMap4k:      131008 kB
2020-04-24T05:38:39.1584789Z DirectMap2M:     4063232 kB
2020-04-24T05:38:39.1584974Z DirectMap1G:     5242880 kB
2020-04-24T05:38:39.1636348Z + python3 ../x.py test src/tools/expand-yaml-anchors
2020-04-24T05:38:40.3621330Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-24T05:38:40.3621330Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-24T05:38:40.3675616Z Building stage0 tool expand-yaml-anchors (x86_64-unknown-linux-gnu)
2020-04-24T05:38:40.5436109Z    Compiling unicode-xid v0.2.0
2020-04-24T05:38:40.6576568Z    Compiling syn v1.0.11
2020-04-24T05:38:41.4026288Z    Compiling linked-hash-map v0.5.2
2020-04-24T05:38:41.4885045Z    Compiling lazy_static v1.4.0
2020-04-24T05:38:41.4885045Z    Compiling lazy_static v1.4.0
2020-04-24T05:38:41.6134414Z    Compiling yaml-rust v0.4.3
2020-04-24T05:38:45.6080030Z    Compiling quote v1.0.2
2020-04-24T05:38:58.9697911Z    Compiling thiserror-impl v1.0.5
2020-04-24T05:39:03.2229062Z    Compiling thiserror v1.0.5
2020-04-24T05:39:03.2723298Z    Compiling yaml-merge-keys v0.4.0
2020-04-24T05:39:04.3603345Z    Compiling expand-yaml-anchors v0.1.0 (/checkout/src/tools/expand-yaml-anchors)
2020-04-24T05:39:08.4210495Z Build completed successfully in 0:00:29
2020-04-24T05:39:08.4293730Z + python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu
2020-04-24T05:39:08.6796480Z     Finished dev [unoptimized] target(s) in 0.16s
2020-04-24T05:39:09.6656846Z Checking rustdoc artifacts (x86_64-unknown-linux-gnu -> i686-pc-windows-gnu)
---
2020-04-24T05:41:04.2099642Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-24T05:41:04.2223733Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-24T05:41:04.3982702Z     Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
2020-04-24T05:41:04.5916347Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-24T05:41:04.9636244Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-24T05:41:07.1039610Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-24T05:41:07.5419769Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-04-24T05:41:09.4401023Z     Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
2020-04-24T05:41:09.8529721Z     Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
2020-04-24T05:44:26.6011129Z    Compiling cargo_metadata v0.9.1
2020-04-24T05:44:29.8348480Z    Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2020-04-24T05:44:39.8405568Z     Finished release [optimized] target(s) in 22.21s
2020-04-24T05:44:39.8494483Z tidy check
2020-04-24T05:44:40.0260706Z tidy error: /checkout/src/librustc_codegen_llvm/base.rs:86: TODO is deprecated; use FIXME
2020-04-24T05:44:40.4774553Z tidy error: /checkout/src/librustc_codegen_ssa/base.rs:604: trailing whitespace
2020-04-24T05:44:40.4862632Z tidy error: /checkout/src/librustc_codegen_ssa/traits/backend.rs:92: TODO is deprecated; use FIXME
2020-04-24T05:44:48.0237975Z Found 492 error codes
2020-04-24T05:44:48.0238180Z Found 0 error codes with no tests
2020-04-24T05:44:48.0238313Z Done!
2020-04-24T05:44:48.0238429Z some tidy checks failed
2020-04-24T05:44:48.0238429Z some tidy checks failed
2020-04-24T05:44:48.0244451Z 
2020-04-24T05:44:48.0278543Z 
2020-04-24T05:44:48.0279991Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo"
2020-04-24T05:44:48.0280529Z 
2020-04-24T05:44:48.0280598Z 
2020-04-24T05:44:48.0280777Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2020-04-24T05:44:48.0281035Z Build completed unsuccessfully in 0:00:31
2020-04-24T05:44:48.0281035Z Build completed unsuccessfully in 0:00:31
2020-04-24T05:44:48.0339057Z == clock drift check ==
2020-04-24T05:44:48.0354813Z   local time: Fri Apr 24 05:44:48 UTC 2020
2020-04-24T05:44:48.1963361Z   network time: Fri, 24 Apr 2020 05:44:48 GMT
2020-04-24T05:44:50.0683813Z 
2020-04-24T05:44:50.0683813Z 
2020-04-24T05:44:50.0742279Z ##[error]Bash exited with code '1'.
2020-04-24T05:44:50.0764548Z ##[section]Finishing: Run build
2020-04-24T05:44:50.0809703Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T05:44:50.0814243Z Task         : Get sources
2020-04-24T05:44:50.0814542Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-24T05:44:50.0814925Z Version      : 1.0.0
2020-04-24T05:44:50.0815257Z Author       : Microsoft
2020-04-24T05:44:50.0815257Z Author       : Microsoft
2020-04-24T05:44:50.0815532Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkId=798199)
2020-04-24T05:44:50.0815823Z ==============================================================================
2020-04-24T05:44:50.3745618Z Cleaning any cached credential from repository: rust-lang/rust (GitHub)
2020-04-24T05:44:50.3783834Z ##[section]Finishing: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T05:44:50.3857362Z Cleaning up task key
2020-04-24T05:44:50.3858355Z Start cleaning up orphan processes.
2020-04-24T05:44:50.4014739Z Terminate orphan process: pid (3642) (python)
2020-04-24T05:44:50.4147833Z ##[section]Finishing: Finalize Job

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @rust-lang/infra. (Feature Requests)

@petrochenkov petrochenkov self-assigned this Apr 24, 2020
@crlf0710 crlf0710 added the F-raw_dylib `#![feature(raw_dylib)]` label Apr 24, 2020
@rust-highfive
Copy link
Collaborator

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2020-04-24T07:45:59.4272836Z ========================== Starting Command Output ===========================
2020-04-24T07:45:59.4277101Z [command]/bin/bash --noprofile --norc /home/vsts/work/_temp/6bcc49c5-3e25-4b00-a9ef-1964e946e014.sh
2020-04-24T07:45:59.4277547Z 
2020-04-24T07:45:59.4281940Z ##[section]Finishing: Disable git automatic line ending conversion
2020-04-24T07:45:59.4299795Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T07:45:59.4302913Z Task         : Get sources
2020-04-24T07:45:59.4303287Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-24T07:45:59.4303556Z Version      : 1.0.0
2020-04-24T07:45:59.4303733Z Author       : Microsoft
---
2020-04-24T07:46:00.6413139Z ##[command]git remote add origin https://github.com/rust-lang/rust
2020-04-24T07:46:00.6422511Z ##[command]git config gc.auto 0
2020-04-24T07:46:00.6429038Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2020-04-24T07:46:00.6433843Z ##[command]git config --get-all http.proxy
2020-04-24T07:46:00.6444488Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/71497/merge:refs/remotes/pull/71497/merge
---
2020-04-24T07:48:27.8971704Z  ---> f7353ccad5b1
2020-04-24T07:48:27.8972151Z Step 6/7 : ENV RUN_CHECK_WITH_PARALLEL_QUERIES 1
2020-04-24T07:48:27.8972580Z  ---> Using cache
2020-04-24T07:48:27.8972914Z  ---> ed38efbaa060
2020-04-24T07:48:27.8975671Z Step 7/7 : ENV SCRIPT python3 ../x.py test src/tools/expand-yaml-anchors &&            python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu &&            python3 ../x.py build --stage 0 src/tools/build-manifest &&            python3 ../x.py test --stage 0 src/tools/compiletest &&            python3 ../x.py test src/tools/tidy &&            /scripts/validate-toolstate.sh
2020-04-24T07:48:27.8977398Z  ---> c5008ef7ae8e
2020-04-24T07:48:27.9004831Z Successfully built c5008ef7ae8e
2020-04-24T07:48:27.9080382Z Successfully tagged rust-ci:latest
2020-04-24T07:48:28.0435332Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-24T07:48:28.0435332Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-24T07:48:28.0452464Z Looks like docker image is the same as before, not uploading
2020-04-24T07:48:36.0107160Z [CI_JOB_NAME=mingw-check]
2020-04-24T07:48:36.0346544Z [CI_JOB_NAME=mingw-check]
2020-04-24T07:48:36.0380691Z == clock drift check ==
2020-04-24T07:48:36.0391517Z   local time: Fri Apr 24 07:48:36 UTC 2020
2020-04-24T07:48:36.1761292Z   network time: Fri, 24 Apr 2020 07:48:36 GMT
2020-04-24T07:48:36.1792091Z Starting sccache server...
2020-04-24T07:48:36.2924506Z configure: processing command line
2020-04-24T07:48:36.2926131Z configure: 
2020-04-24T07:48:36.2927143Z configure: rust.parallel-compiler := True
---
2020-04-24T07:52:42.6588749Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-24T07:52:42.7463552Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-24T07:52:42.9547817Z     Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
2020-04-24T07:52:43.1025122Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-24T07:52:43.6138730Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-24T07:52:46.0276067Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-24T07:52:46.5476334Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-04-24T07:52:48.7579630Z     Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
2020-04-24T07:52:49.2283912Z     Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
2020-04-24T07:54:46.3455514Z configure: rust.verify-llvm-ir  := True
2020-04-24T07:54:46.3455951Z configure: rust.channel         := nightly
2020-04-24T07:54:46.3456456Z configure: llvm.ccache          := sccache
2020-04-24T07:54:46.3456856Z configure: build.submodules     := False
2020-04-24T07:54:46.3457588Z configure: build.configure-args := ['--enable-sccache', '--disable-manage-submodu ...
2020-04-24T07:54:46.3458387Z configure: writing `config.toml` in current directory
2020-04-24T07:54:46.3458720Z configure: 
2020-04-24T07:54:46.3459294Z configure: run `python /checkout/x.py --help`
2020-04-24T07:54:46.3459663Z configure: 
---
2020-04-24T07:56:25.6026205Z Hugepagesize:       2048 kB
2020-04-24T07:56:25.6026404Z DirectMap4k:      114624 kB
2020-04-24T07:56:25.6026618Z DirectMap2M:     4079616 kB
2020-04-24T07:56:25.6026816Z DirectMap1G:     5242880 kB
2020-04-24T07:56:25.6056071Z + python3 ../x.py test src/tools/expand-yaml-anchors
2020-04-24T07:56:27.1191479Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-24T07:56:27.1191479Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-24T07:56:27.1201876Z Building stage0 tool expand-yaml-anchors (x86_64-unknown-linux-gnu)
2020-04-24T07:56:27.3774190Z    Compiling unicode-xid v0.2.0
2020-04-24T07:56:27.5214202Z    Compiling syn v1.0.11
2020-04-24T07:56:28.4476017Z    Compiling linked-hash-map v0.5.2
2020-04-24T07:56:28.4575805Z    Compiling lazy_static v1.4.0
2020-04-24T07:56:28.4575805Z    Compiling lazy_static v1.4.0
2020-04-24T07:56:28.6953959Z    Compiling yaml-rust v0.4.3
2020-04-24T07:56:33.2941370Z    Compiling quote v1.0.2
2020-04-24T07:56:48.8792090Z    Compiling thiserror-impl v1.0.5
2020-04-24T07:56:53.9646933Z    Compiling thiserror v1.0.5
2020-04-24T07:56:54.0344741Z    Compiling yaml-merge-keys v0.4.0
2020-04-24T07:56:55.2937701Z    Compiling expand-yaml-anchors v0.1.0 (/checkout/src/tools/expand-yaml-anchors)
2020-04-24T07:56:57.3909644Z Build completed successfully in 0:00:31
2020-04-24T07:56:57.4053560Z + python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu
2020-04-24T07:56:57.6876973Z     Finished dev [unoptimized] target(s) in 0.18s
2020-04-24T07:56:58.8495419Z Checking rustdoc artifacts (x86_64-unknown-linux-gnu -> i686-pc-windows-gnu)
---
2020-04-24T07:59:15.3961010Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-24T07:59:15.5840828Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-24T07:59:15.7966786Z     Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
2020-04-24T07:59:15.8591561Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-24T07:59:16.4703198Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-24T07:59:18.9240536Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-24T07:59:19.4894481Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-04-24T07:59:21.7173442Z     Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
2020-04-24T07:59:22.1956942Z     Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
2020-04-24T08:03:17.6465392Z    Compiling cargo_metadata v0.9.1
2020-04-24T08:03:21.5552726Z    Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2020-04-24T08:03:33.3430605Z     Finished release [optimized] target(s) in 26.75s
2020-04-24T08:03:33.3516124Z tidy check
2020-04-24T08:03:33.5496235Z tidy error: /checkout/src/librustc_codegen_llvm/base.rs:99: trailing whitespace
2020-04-24T08:03:33.5496758Z tidy error: /checkout/src/librustc_codegen_llvm/base.rs:121: trailing whitespace
2020-04-24T08:03:33.5497132Z tidy error: /checkout/src/librustc_codegen_llvm/base.rs:122: trailing whitespace
2020-04-24T08:03:33.5497518Z tidy error: /checkout/src/librustc_codegen_llvm/base.rs:125: trailing whitespace
2020-04-24T08:03:34.1283365Z tidy error: /checkout/src/librustc_codegen_ssa/base.rs:604: trailing whitespace
2020-04-24T08:03:34.1396778Z tidy error: /checkout/src/librustc_codegen_ssa/traits/backend.rs:92: TODO is deprecated; use FIXME
2020-04-24T08:03:42.0069995Z Found 492 error codes
2020-04-24T08:03:42.0070782Z Found 0 error codes with no tests
2020-04-24T08:03:42.0071085Z Done!
2020-04-24T08:03:42.0071380Z some tidy checks failed
2020-04-24T08:03:42.0071380Z some tidy checks failed
2020-04-24T08:03:42.0083549Z 
2020-04-24T08:03:42.0083866Z 
2020-04-24T08:03:42.0085735Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo"
2020-04-24T08:03:42.0086747Z 
2020-04-24T08:03:42.0086973Z 
2020-04-24T08:03:42.0094987Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2020-04-24T08:03:42.0095481Z Build completed unsuccessfully in 0:00:36
2020-04-24T08:03:42.0095481Z Build completed unsuccessfully in 0:00:36
2020-04-24T08:03:42.0205999Z == clock drift check ==
2020-04-24T08:03:42.0222563Z   local time: Fri Apr 24 08:03:42 UTC 2020
2020-04-24T08:03:42.2868811Z   network time: Fri, 24 Apr 2020 08:03:42 GMT
2020-04-24T08:03:43.8110199Z 
2020-04-24T08:03:43.8110199Z 
2020-04-24T08:03:43.8188326Z ##[error]Bash exited with code '1'.
2020-04-24T08:03:43.8203112Z ##[section]Finishing: Run build
2020-04-24T08:03:43.8250954Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T08:03:43.8255863Z Task         : Get sources
2020-04-24T08:03:43.8256174Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-24T08:03:43.8256463Z Version      : 1.0.0
2020-04-24T08:03:43.8256684Z Author       : Microsoft
2020-04-24T08:03:43.8256684Z Author       : Microsoft
2020-04-24T08:03:43.8257895Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkId=798199)
2020-04-24T08:03:43.8258273Z ==============================================================================
2020-04-24T08:03:44.1892843Z Cleaning any cached credential from repository: rust-lang/rust (GitHub)
2020-04-24T08:03:44.1942492Z ##[section]Finishing: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-24T08:03:44.2038278Z Cleaning up task key
2020-04-24T08:03:44.2039541Z Start cleaning up orphan processes.
2020-04-24T08:03:44.2261635Z Terminate orphan process: pid (4671) (python)
2020-04-24T08:03:44.2551574Z ##[section]Finishing: Finalize Job

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @rust-lang/infra. (Feature Requests)

Copy link
Member

@est31 est31 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some smaller nits

src/librustc_codegen_llvm/base.rs Outdated Show resolved Hide resolved
src/librustc_codegen_llvm/base.rs Outdated Show resolved Hide resolved
src/librustc_codegen_ssa/base.rs Outdated Show resolved Hide resolved
@petrochenkov petrochenkov removed their assignment Apr 24, 2020
@rust-highfive
Copy link
Collaborator

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2020-04-25T16:54:02.9522104Z ========================== Starting Command Output ===========================
2020-04-25T16:54:02.9525067Z [command]/bin/bash --noprofile --norc /home/vsts/work/_temp/ed633d74-3c9b-4005-a091-a0a23b8cc160.sh
2020-04-25T16:54:02.9525374Z 
2020-04-25T16:54:02.9529705Z ##[section]Finishing: Disable git automatic line ending conversion
2020-04-25T16:54:02.9563295Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-25T16:54:02.9567902Z Task         : Get sources
2020-04-25T16:54:02.9568261Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-25T16:54:02.9568632Z Version      : 1.0.0
2020-04-25T16:54:02.9568866Z Author       : Microsoft
---
2020-04-25T16:54:05.1910643Z ##[command]git remote add origin https://github.com/rust-lang/rust
2020-04-25T16:54:05.2092176Z ##[command]git config gc.auto 0
2020-04-25T16:54:05.2138662Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2020-04-25T16:54:05.2160271Z ##[command]git config --get-all http.proxy
2020-04-25T16:54:05.2249790Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/71497/merge:refs/remotes/pull/71497/merge
---
2020-04-25T16:57:50.8182188Z  ---> f7353ccad5b1
2020-04-25T16:57:50.8187702Z Step 6/7 : ENV RUN_CHECK_WITH_PARALLEL_QUERIES 1
2020-04-25T16:57:50.8189442Z  ---> Using cache
2020-04-25T16:57:50.8190189Z  ---> ed38efbaa060
2020-04-25T16:57:50.8191945Z Step 7/7 : ENV SCRIPT python3 ../x.py test src/tools/expand-yaml-anchors &&            python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu &&            python3 ../x.py build --stage 0 src/tools/build-manifest &&            python3 ../x.py test --stage 0 src/tools/compiletest &&            python3 ../x.py test src/tools/tidy &&            /scripts/validate-toolstate.sh
2020-04-25T16:57:50.8194616Z  ---> c5008ef7ae8e
2020-04-25T16:57:50.8227298Z Successfully built c5008ef7ae8e
2020-04-25T16:57:50.8271571Z Successfully tagged rust-ci:latest
2020-04-25T16:57:50.8569436Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-25T16:57:50.8569436Z Built container sha256:c5008ef7ae8e94d7ef502e3cef26e61208e14ebdb36913f3a8bb86291bd6430b
2020-04-25T16:57:50.8587140Z Looks like docker image is the same as before, not uploading
2020-04-25T16:57:59.6234890Z [CI_JOB_NAME=mingw-check]
2020-04-25T16:57:59.6533749Z [CI_JOB_NAME=mingw-check]
2020-04-25T16:57:59.6572473Z == clock drift check ==
2020-04-25T16:57:59.6583511Z   local time: Sat Apr 25 16:57:59 UTC 2020
2020-04-25T16:57:59.9392190Z   network time: Sat, 25 Apr 2020 16:57:59 GMT
2020-04-25T16:57:59.9419191Z Starting sccache server...
2020-04-25T16:58:00.0649717Z configure: processing command line
2020-04-25T16:58:00.0649972Z configure: 
2020-04-25T16:58:00.0650881Z configure: rust.parallel-compiler := True
---
2020-04-25T17:02:15.4907186Z     Checking rustc_span v0.0.0 (/checkout/src/librustc_span)
2020-04-25T17:02:20.4040634Z     Checking rustc_errors v0.0.0 (/checkout/src/librustc_errors)
2020-04-25T17:02:21.7753364Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-25T17:02:21.8994448Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-25T17:02:22.1088730Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-25T17:02:22.9190792Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-25T17:02:23.0776602Z     Checking rustc_session v0.0.0 (/checkout/src/librustc_session)
2020-04-25T17:02:24.7400715Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-25T17:02:25.2861314Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
---
2020-04-25T17:04:32.3310021Z configure: llvm.ccache          := sccache
2020-04-25T17:04:32.3310531Z configure: rust.dist-src        := False
2020-04-25T17:04:32.3310836Z configure: llvm.assertions      := True
2020-04-25T17:04:32.3311134Z configure: build.submodules     := False
2020-04-25T17:04:32.3311777Z configure: build.configure-args := ['--enable-sccache', '--disable-manage-submodu ...
2020-04-25T17:04:32.3312349Z configure: writing `config.toml` in current directory
2020-04-25T17:04:32.3312802Z configure: 
2020-04-25T17:04:32.3313289Z configure: run `python /checkout/x.py --help`
2020-04-25T17:04:32.3313526Z configure: 
---
2020-04-25T17:06:15.1641748Z Hugepagesize:       2048 kB
2020-04-25T17:06:15.1641952Z DirectMap4k:      147392 kB
2020-04-25T17:06:15.1642158Z DirectMap2M:     4046848 kB
2020-04-25T17:06:15.1642380Z DirectMap1G:     5242880 kB
2020-04-25T17:06:15.1657425Z + python3 ../x.py test src/tools/expand-yaml-anchors
2020-04-25T17:06:16.7097495Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-25T17:06:16.7097495Z Ensuring the YAML anchors in the GitHub Actions config were expanded
2020-04-25T17:06:16.7111343Z Building stage0 tool expand-yaml-anchors (x86_64-unknown-linux-gnu)
2020-04-25T17:06:16.9776408Z    Compiling unicode-xid v0.2.0
2020-04-25T17:06:17.1118103Z    Compiling syn v1.0.11
2020-04-25T17:06:18.0716447Z    Compiling linked-hash-map v0.5.2
2020-04-25T17:06:18.0939196Z    Compiling lazy_static v1.4.0
2020-04-25T17:06:18.0939196Z    Compiling lazy_static v1.4.0
2020-04-25T17:06:18.3307472Z    Compiling yaml-rust v0.4.3
2020-04-25T17:06:23.2530326Z    Compiling quote v1.0.2
2020-04-25T17:06:39.9546682Z    Compiling thiserror-impl v1.0.5
2020-04-25T17:06:45.3609343Z    Compiling thiserror v1.0.5
2020-04-25T17:06:45.4252229Z    Compiling yaml-merge-keys v0.4.0
2020-04-25T17:06:46.7186417Z    Compiling expand-yaml-anchors v0.1.0 (/checkout/src/tools/expand-yaml-anchors)
2020-04-25T17:06:48.5367645Z Build completed successfully in 0:00:33
2020-04-25T17:06:48.5467686Z + python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu
2020-04-25T17:06:48.8699269Z     Finished dev [unoptimized] target(s) in 0.21s
2020-04-25T17:06:50.1573384Z Checking rustdoc artifacts (x86_64-unknown-linux-gnu -> i686-pc-windows-gnu)
---
2020-04-25T17:09:12.4867358Z     Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
2020-04-25T17:09:12.7638989Z     Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2020-04-25T17:09:12.9725024Z     Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
2020-04-25T17:09:12.9969275Z     Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
2020-04-25T17:09:13.6762405Z     Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
2020-04-25T17:09:16.2453963Z     Checking rustc_attr v0.0.0 (/checkout/src/librustc_attr)
2020-04-25T17:09:16.7937977Z     Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
2020-04-25T17:09:19.0884084Z     Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
2020-04-25T17:09:19.5869375Z     Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
2020-04-25T17:13:52.0551679Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 23:
2020-04-25T17:13:52.0555834Z  use crate::metadata;
2020-04-25T17:13:52.0559755Z  use crate::value::Value;
2020-04-25T17:13:52.0563563Z  
2020-04-25T17:13:52.0571078Z +use log::debug;
2020-04-25T17:13:52.0595994Z  use rustc_codegen_ssa::base::maybe_create_entry_wrapper;
2020-04-25T17:13:52.0598461Z  use rustc_codegen_ssa::mono_item::MonoItemExt;
2020-04-25T17:13:52.0598863Z  use rustc_codegen_ssa::traits::*;
2020-04-25T17:13:52.0599146Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 36:
2020-04-25T17:13:52.0599533Z  use rustc_middle::ty::TyCtxt;
2020-04-25T17:13:52.0600034Z  use rustc_span::symbol::Symbol;
2020-04-25T17:13:52.0600864Z -use log::debug;
2020-04-25T17:13:52.0601216Z  
2020-04-25T17:13:52.0601375Z  use std::ffi::CString;
2020-04-25T17:13:52.0601375Z  use std::ffi::CString;
2020-04-25T17:13:52.0601575Z  use std::time::Instant;
2020-04-25T17:13:52.0601864Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 80:
2020-04-25T17:13:52.0602365Z      _tcx: TyCtxt<'tcx>,
2020-04-25T17:13:52.0602588Z      raw_dylibs: &[RawDylibImports],
2020-04-25T17:13:52.0602826Z      llvm_module: &mut ModuleLlvm,
2020-04-25T17:13:52.0603167Z -){
2020-04-25T17:13:52.0603293Z +) {
2020-04-25T17:13:52.0603536Z      let (idata_llctx, idata_llmod) = (&*llvm_module.llcx, llvm_module.llmod());
2020-04-25T17:13:52.0604040Z -
2020-04-25T17:13:52.0604040Z -
2020-04-25T17:13:52.0604244Z      let idata_7 = SmallCStr::new(".idata$7");
2020-04-25T17:13:52.0604544Z      let idata_6 = SmallCStr::new(".idata$6");
2020-04-25T17:13:52.0604965Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 121:
2020-04-25T17:13:52.0604965Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 121:
2020-04-25T17:13:52.0605315Z                          let llglobal = llvm::LLVMAddGlobal(
2020-04-25T17:13:52.0605611Z                              idata_llmod,
2020-04-25T17:13:52.0605885Z                              common::val_ty(llname),
2020-04-25T17:13:52.0606779Z +                            global_name.as_ptr(),
2020-04-25T17:13:52.0607010Z                          );
2020-04-25T17:13:52.0607179Z  
2020-04-25T17:13:52.0607179Z  
2020-04-25T17:13:52.0607413Z                          llvm::LLVMSetInitializer(llglobal, llname);
2020-04-25T17:13:52.0607757Z Diff in /checkout/src/librustc_codegen_llvm/base.rs at line 128:
2020-04-25T17:13:52.0608097Z                          llvm::LLVMSetGlobalConstant(&llglobal, 1);
2020-04-25T17:13:52.0608521Z                          llvm::LLVMRustSetLinkage(llglobal, llvm::Linkage::PrivateLinkage);
2020-04-25T17:13:52.0608938Z                          llvm::LLVMSetSection(llglobal, idata_6.as_ptr());
2020-04-25T17:13:52.0609788Z -                    _ => {},
2020-04-25T17:13:52.0609988Z +                    }
2020-04-25T17:13:52.0610178Z +                    _ => {}
2020-04-25T17:13:52.0610376Z                  }
---
2020-04-25T17:13:52.0612162Z      }
2020-04-25T17:13:52.0612413Z -
2020-04-25T17:13:52.0612530Z  }
2020-04-25T17:13:52.0612645Z  
2020-04-25T17:13:52.0612971Z  pub struct ValueIter<'ll> {
2020-04-25T17:13:52.0614534Z Running `"/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/rustfmt" "--config-path" "/checkout" "--edition" "2018" "--unstable-features" "--skip-children" "--check" "/checkout/src/librustc_codegen_llvm/base.rs"` failed.
2020-04-25T17:13:52.0615535Z If you're running `tidy`, try again with `--bless` flag. Or, you just want to format code, run `./x.py fmt` instead.
2020-04-25T17:13:52.0666545Z Build completed unsuccessfully in 0:00:40
2020-04-25T17:13:53.0052419Z == clock drift check ==
2020-04-25T17:13:53.0054993Z   local time: Sat Apr 25 17:13:52 UTC 2020
2020-04-25T17:13:53.0054993Z   local time: Sat Apr 25 17:13:52 UTC 2020
2020-04-25T17:13:53.0055358Z   network time: Sat, 25 Apr 2020 17:13:52 GMT
2020-04-25T17:13:53.9577023Z 
2020-04-25T17:13:53.9577023Z 
2020-04-25T17:13:53.9663892Z ##[error]Bash exited with code '1'.
2020-04-25T17:13:53.9700292Z ##[section]Finishing: Run build
2020-04-25T17:13:53.9757548Z ##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-25T17:13:53.9762575Z Task         : Get sources
2020-04-25T17:13:53.9762937Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
2020-04-25T17:13:53.9763270Z Version      : 1.0.0
2020-04-25T17:13:53.9763521Z Author       : Microsoft
2020-04-25T17:13:53.9763521Z Author       : Microsoft
2020-04-25T17:13:53.9764071Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkId=798199)
2020-04-25T17:13:53.9764495Z ==============================================================================
2020-04-25T17:13:54.3711385Z Cleaning any cached credential from repository: rust-lang/rust (GitHub)
2020-04-25T17:13:54.3758691Z ##[section]Finishing: Checkout rust-lang/rust@refs/pull/71497/merge to s
2020-04-25T17:13:54.3869508Z Cleaning up task key
2020-04-25T17:13:54.3870865Z Start cleaning up orphan processes.
2020-04-25T17:13:54.4099354Z Terminate orphan process: pid (3835) (python)
2020-04-25T17:13:54.4278416Z ##[section]Finishing: Finalize Job

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @rust-lang/infra. (Feature Requests)

@tinaun tinaun force-pushed the raw_dylib_codegen branch from aa847c1 to 92d86ab Compare April 26, 2020 06:24
@JohnCSimon JohnCSimon added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 10, 2020
@est31
Copy link
Member

est31 commented May 11, 2020

stub function generation

Is this actually needed? AFAIK it will just select the functions by name?

every pointer type here should be a 32 bit RVA - need to get base address

See stack overflow question about it here. You need to declare a specially named constant and then do some computation in IR code. It's also inside the example of #30027. I don't think the computation can be done in the backend as when the IR code is being emitted the info is not available yet, but not an expert.

im running into a few llvm assertions

No idea, I'm sorry.

need examples / test cases

@ZerothLaw has offered help with this. Optimally, the test would create two dll files (written in Rust, using cdylib), both defining and exporting the same function returning a different i32 constant each. Then you'd specify one of the dlls in the test case and assert that the result matches the dll you named.

@retep998
Copy link
Member

Test case:

mod foo1 {
    #[link(kind="raw_dylib", name="foo1.dll")]
    extern {
        fn foo() -> i32;
    }
}
mod foo2 {
    #[link(kind="raw_dylib", name="foo2.dll")]
    extern {
        fn foo() -> i32;
    }
}
fn main() {
    unsafe {
        assert_eq!(foo1::foo(), 100);
        assert_eq!(foo2::foo(), 200);
    }
}

Variations include mixing raw_dylib with other kinds like dylib static and static-nobundle.

@tinaun
Copy link
Contributor Author

tinaun commented May 11, 2020

i was under the assumption that examples like the one that @retep998 just posted cannot work unless we generate the stub that calls the correct dll as a mangled rust function

@est31
Copy link
Member

est31 commented May 11, 2020

@retep998 how will that be possible? I can't find hints for it to work either in LLVM IR nor in the PE format, but likely I'm missing something.

What would the wrappers contain? How would they be able to differ between foo from foo1.dll and foo from foo2.dll? I can't find a method to link a function to the idata tables, thought they'd be linked by name only.

@retep998
Copy link
Member

I was under the impression that an idata entry could provide a mapping from a mangled name to an external name. There's already some of this going on for things like stdcall and cdecl on 32-bit where _foo or _foo@8 maps to foo in a specific dll. Therefore I imagined it would be possible to map from the rust mangled version of foo to foo in a specific dll.

@est31
Copy link
Member

est31 commented May 12, 2020

Actually you might be right. The import address table contains the needed data during runtime: the addresses of the loaded symbols. I have no idea how to reference it in the wrapper though.

I wonder if EntryPoint of C#'s DllImport works similarly.

@est31
Copy link
Member

est31 commented May 12, 2020

im running into a few llvm assertions (wrong type in array element initializer)

I'm wondering: are you maybe compiling for 64 bit? Because currently the implementation only supports 32 bit...

@tinaun
Copy link
Contributor Author

tinaun commented May 12, 2020

rvas are always 32 bit, regardless of platform

@est31
Copy link
Member

est31 commented May 12, 2020

Point. The import lookup table has 64 bit entries on 64 bit but even there the RVAs are 31 bit. Also your code doesn't emit it yet so it can't be the cause of the assertion errors.

@bors
Copy link
Contributor

bors commented May 22, 2020

☔ The latest upstream changes (presumably #72458) made this pull request unmergeable. Please resolve the merge conflicts.

@tinaun tinaun force-pushed the raw_dylib_codegen branch from 5dce7fd to 1be946c Compare May 26, 2020 14:42
@rust-highfive
Copy link
Collaborator

The job mingw-check of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
##[section]Starting: Linux mingw-check
##[section]Starting: Initialize job
Agent name: 'Hosted Agent'
Agent machine name: 'fv-az578'
Current agent version: '2.169.0'
##[group]Operating System
16.04.6
LTS
LTS
##[endgroup]
##[group]Virtual Environment
Environment: ubuntu-16.04
Version: 20200517.1
Included Software: https://github.com/actions/virtual-environments/blob/ubuntu16/20200517.1/images/linux/Ubuntu1604-README.md
##[endgroup]
Agent running as: 'vsts'
Prepare build directory.
Set build variables.
Download all required tasks.
Download all required tasks.
Downloading task: Bash (3.163.2)
Checking job knob settings.
   Knob: AgentToolsDirectory = /opt/hostedtoolcache Source: ${AGENT_TOOLSDIRECTORY} 
   Knob: AgentPerflog = /home/vsts/perflog Source: ${VSTS_AGENT_PERFLOG} 
Start tracking orphan processes.
##[section]Finishing: Initialize job
##[section]Starting: Configure Job Name
==============================================================================
---
========================== Starting Command Output ===========================
[command]/bin/bash --noprofile --norc /home/vsts/work/_temp/39e8fbf9-3055-4023-b7e5-88ca4e6c7882.sh

##[section]Finishing: Disable git automatic line ending conversion
##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
Task         : Get sources
Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
Version      : 1.0.0
Author       : Microsoft
---
##[command]git remote add origin https://github.com/rust-lang/rust
##[command]git config gc.auto 0
##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
##[command]git config --get-all http.proxy
##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/71497/merge:refs/remotes/pull/71497/merge
---
 ---> 3adb0605cc65
Step 6/7 : ENV RUN_CHECK_WITH_PARALLEL_QUERIES 1
 ---> Using cache
 ---> 28dbc326cb7f
Step 7/7 : ENV SCRIPT python3 ../x.py test src/tools/expand-yaml-anchors &&            python3 ../x.py check --target=i686-pc-windows-gnu --host=i686-pc-windows-gnu &&            python3 ../x.py build --stage 0 src/tools/build-manifest &&            python3 ../x.py test --stage 0 src/tools/compiletest &&            python3 ../x.py test src/tools/tidy &&            python3 ../x.py doc --stage 0 src/libstd &&            /scripts/validate-toolstate.sh
 ---> 537a01811900
Successfully built 537a01811900
Successfully tagged rust-ci:latest
Built container sha256:537a018119009dc218456238dec90b5530050db1e2a1e166550c218003f6159d
---
    Checking rustc_feature v0.0.0 (/checkout/src/librustc_feature)
    Checking fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
    Checking rustc_ast_pretty v0.0.0 (/checkout/src/librustc_ast_pretty)
    Checking rustc_hir v0.0.0 (/checkout/src/librustc_hir)
    Checking rustc_query_system v0.0.0 (/checkout/src/librustc_query_system)
    Checking chalk-rust-ir v0.10.0
    Checking rustc_parse v0.0.0 (/checkout/src/librustc_parse)
    Checking rustc_hir_pretty v0.0.0 (/checkout/src/librustc_hir_pretty)
    Checking rustc_ast_lowering v0.0.0 (/checkout/src/librustc_ast_lowering)
---
    Checking rustc_infer v0.0.0 (/checkout/src/librustc_infer)
    Checking rustc_symbol_mangling v0.0.0 (/checkout/src/librustc_symbol_mangling)
    Checking rustc_save_analysis v0.0.0 (/checkout/src/librustc_save_analysis)
    Checking rustc_trait_selection v0.0.0 (/checkout/src/librustc_trait_selection)
error[E0433]: failed to resolve: could not find `NativeLibraryKind` in `cstore`
   --> src/librustc_codegen_ssa/base.rs:606:32
    |
606 |         if lib.kind == cstore::NativeLibraryKind::NativeRawDylib {
    |                                ^^^^^^^^^^^^^^^^^ could not find `NativeLibraryKind` in `cstore`
error: aborting due to previous error

For more information about this error, try `rustc --explain E0433`.
error: could not compile `rustc_codegen_ssa`.
error: could not compile `rustc_codegen_ssa`.

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "check" "--target" "x86_64-unknown-linux-gnu" "-Zbinary-dep-depinfo" "-j" "2" "--release" "--color" "always" "--features" " llvm" "--manifest-path" "/checkout/src/rustc/Cargo.toml" "--message-format" "json-render-diagnostics"
failed to run: /checkout/obj/build/bootstrap/debug/bootstrap check
Build completed unsuccessfully in 0:04:33
== clock drift check ==
  local time: Tue May 26 14:50:26 UTC 2020
  local time: Tue May 26 14:50:26 UTC 2020
  network time: Tue, 26 May 2020 14:50:26 GMT
== end clock drift check ==

##[error]Bash exited with code '1'.
##[section]Finishing: Run build
##[section]Starting: Checkout rust-lang/rust@refs/pull/71497/merge to s
Task         : Get sources
Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.
Version      : 1.0.0
Author       : Microsoft
Author       : Microsoft
Help         : [More Information](https://go.microsoft.com/fwlink/?LinkId=798199)
==============================================================================
Cleaning any cached credential from repository: rust-lang/rust (GitHub)
##[section]Finishing: Checkout rust-lang/rust@refs/pull/71497/merge to s
Cleaning up task key
Start cleaning up orphan processes.
Terminate orphan process: pid (3604) (python)
##[section]Finishing: Finalize Job

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @rust-lang/infra. (Feature Requests)

@Dylan-DPC-zz
Copy link

@tinaun any progress on this?

@Muirrum
Copy link
Member

Muirrum commented Jul 30, 2020

@tinaun what's the status of this?

@bors
Copy link
Contributor

bors commented Aug 18, 2020

☔ The latest upstream changes (presumably #75120) made this pull request unmergeable. Please resolve the merge conflicts.

@Dylan-DPC-zz
Copy link

Closing this due to inactivity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
F-raw_dylib `#![feature(raw_dylib)]` S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author.
Projects
None yet
Development

Successfully merging this pull request may close these issues.