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

Compiler should have more comments #107

Closed
jyasskin opened this issue Jul 11, 2010 · 3 comments
Closed

Compiler should have more comments #107

jyasskin opened this issue Jul 11, 2010 · 3 comments

Comments

@jyasskin
Copy link
Contributor

I'm having a lot of trouble navigating the bootstrap compiler because almost none of the functions or types are commented, and there's no glossary of what abbreviations like ext, iso, carg, etc stand for.

@graydon
Copy link
Contributor

graydon commented Jul 11, 2010

I'm writing up a guide-to-the-source presently, will commit later this afternoon. Sorry for the sparsity so far.

@graydon
Copy link
Contributor

graydon commented Jul 11, 2010

Added a little guide as src/boot/README, let me know if there are more parts you want elaborated-on.

@pcwalton
Copy link
Contributor

pcwalton commented Jun 8, 2011

As stated, this applies to rustboot, which is long since dead and is kinda vague; closing for now.

@pcwalton pcwalton closed this as completed Jun 8, 2011
oli-obk pushed a commit to oli-obk/rust that referenced this issue Jul 19, 2017
keeperofdakeys pushed a commit to keeperofdakeys/rust that referenced this issue Dec 12, 2017
kazcw pushed a commit to kazcw/rust that referenced this issue Oct 23, 2018
- Add docs for the _SIDD_EQUAL_RANGES mode
kazcw pushed a commit to kazcw/rust that referenced this issue Oct 23, 2018
* avx: _mm256_loadu_pd

* avx: _mm256_storeu_pd

* avx: _mm256_loadu_ps

* avx: _mm256_storeu_ps

* avx: fix _mm256_storeu_pd and _mm256_storeu_ps

* avx: _mm256_loadu_si256

* avx: _mm256_undefined_si256

* avx: _mm256_maskload_pd

* avx: _mm256_maskstore_pd

* Attempt to fix CI (rust-lang#108)

Need to bring codegen units back to only one for now

* [x86] sse4.2 add docs for _SIDD_EQUAL_RANGES (rust-lang#107)

- Add docs for the _SIDD_EQUAL_RANGES mode

* Add _MM_TRANSPOSE4_PS pseudo-macro. (rust-lang#106)

This adds a strange macro, which I've replaced with a function, because it
seems there are not many better alternatives.

Also adds a test, and `#[allow(non_snake_case)]` to `#[simd_test]`.

* Fix i586 tests

* Implement bitwise SSE ops & _mm_cmp*_ss  (rust-lang#103)

* Add _mm_{and,andnot,or,xor}_ps

* Add _mm_cmpeq_ss

* Add _mm_cmplt_ss

* Add _mm_cmple_ss

* Add _mm_cmpgt_ss

* Add _mm_cmpge_ss

* Add _mm_cmpneq_ss

* Add _mm_cmpnlt_ss

* Add _mm_cmpnle_ss

* Add _mm_cmpngt_ss

* Add _mm_cmpnge_ss

* Add _mm_cmpord_ss

* Add _mm_cmpunord_ss

* Fix _mm_{and,andnot,or,xor}_ps tests for i586

LLVM for i586 doesn't seem to generate `andps`, and instead generates 4
`and`s. Similar for the other operations.

* avx: _mm_maskload_pd

* avx: _mm_maskstore_pd

* avx: _mm256_maskload_ps

* avx: _mm256_maskstore_ps

* avx: _mm_maskload_ps, _mm_maskstore_ps

* avx: _mm256_movehdup_ps

* avx: _mm256_moveldup_ps
bors pushed a commit to rust-lang-ci/rust that referenced this issue Oct 1, 2021
djtech-dev pushed a commit to djtech-dev/rust that referenced this issue Dec 9, 2021
Remove get_entry_basic_block and make get_first_basic_block return None when llvm returns nullptr.
bjorn3 pushed a commit to bjorn3/rust that referenced this issue Dec 31, 2021
* Rebase fallout.

* Move rustc_middle::middle::cstore to rustc_session.

* Create more accurate debuginfo for vtables.

Before this commit all vtables would have the same name "vtable" in
debuginfo. Now they get a name that identifies the implementing type
and the trait that is being implemented.

* Remove alloc::prelude

As per the libs team decision in rust-lang#58935.

Closes rust-lang#58935

* Make hash_result an Option.

* Properly check `target_features` not to trigger an assertion

* Add LLVM CFI support to the Rust compiler

This commit adds LLVM Control Flow Integrity (CFI) support to the Rust
compiler. It initially provides forward-edge control flow protection for
Rust-compiled code only by aggregating function pointers in groups
identified by their number of arguments.

Forward-edge control flow protection for C or C++ and Rust -compiled
code "mixed binaries" (i.e., for when C or C++ and Rust -compiled code
share the same virtual address space) will be provided in later work as
part of this project by defining and using compatible type identifiers
(see Type metadata in the design document in the tracking issue rust-lang#89653).

LLVM CFI can be enabled with -Zsanitizer=cfi and requires LTO (i.e.,
-Clto).

* Update to nightly-2021-10-30

* Add deduplication of constant values as rustc relies on LLVM doing that

Co-authored-by: Camille GILLOT <gillot.camille@gmail.com>
Co-authored-by: Michael Woerister <michaelwoerister@posteo>
Co-authored-by: Amanieu d'Antras <amanieu@gmail.com>
Co-authored-by: Yuki Okushi <yuki.okushi@huawei.com>
Co-authored-by: Ramon de C Valle <rcvalle@users.noreply.github.com>
carolynzech added a commit to celinval/rust-dev that referenced this issue Dec 13, 2024
Improve the logging in our PR approvals workflow. This is a good thing
to do generally, but we're specifically trying to debug why the script
is failing in rust-lang#107.

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 and MIT licenses.

Co-authored-by: Michael Tautschnig <tautschn@amazon.com>
carolynzech added a commit to celinval/rust-dev that referenced this issue Dec 13, 2024
The `check_approvals` workflow in rust-lang#107 fails because by default Github
[only returns the first 30
results](https://docs.github.com/en/rest/using-the-rest-api/using-pagination-in-the-rest-api?apiVersion=2022-11-28#about-pagination)
for GET requests to their API. rust-lang#107 has more review activity than that,
so the approvals are all on the second or third pages, hence why the
workflow says zero approvals.

So, this PR updates the script to fetch 100 responses per page, up to
100 pages. These are arbitrary values, but I didn't want to have any
infinite loops, and I can't imagine a realistic PR ever going above
these numbers (and I put a warning in the script if they do).

I checked that this new workflow runs without error [on my
fork](https://github.com/carolynzech/verify-rust-std/actions/runs/12267930897/job/34228889979?pr=20).
I also did some experimentation in my local bash with the branch from
rust-lang#107 and verified that upping the pagination limits like this does
indeed return the approvals on the later pages.

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 and MIT licenses.
carolynzech added a commit to celinval/rust-dev that referenced this issue Dec 13, 2024
…st-lang#107)

### **Description**
This PR includes contracts and proof harnesses for the four APIs,
`offset` ,` byte_sub`, `map_addr`, and `with_addr` which are part of the
NonNull library in Rust.

### **Changes Overview:**
Covered APIs:
NonNull::offset: Adds an offset to a pointer
NonNull::byte_sub: Calculates an offset from a pointer in bytes.
NonNull:: map_addr: Creates a new pointer by mapping self's address to a
new one
NonNull::with_addr: Creates a new pointer with the given address

Proof harness:
non_null_check_offset
non_null_check_byte_sub
non_null_check_map_addr
non_null_check_with_addr


### **Revalidation**

To revalidate the verification results, run kani verify-std -Z
unstable-options "path/to/library" -Z function-contracts -Z
mem-predicates --harness ptr::non_null::verify. This will run all four
harnesses in the module. All default checks should pass:

```

VERIFICATION:- SUCCESSFUL
Verification Time: 0.57787573s

Complete - 6 successfully verified harnesses, 0 failures, 6 total.
```
Towards issue rust-lang#53 

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 and MIT licenses.

---------

Co-authored-by: Carolyn Zech <cmzech@amazon.com>
Co-authored-by: Zyad Hassan <zyadh@amazon.com>
Co-authored-by: Michael Tautschnig <tautschn@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants