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

unrecognized quad 41 with iter #111

Closed
rillian opened this issue Jul 16, 2010 · 2 comments
Closed

unrecognized quad 41 with iter #111

rillian opened this issue Jul 16, 2010 · 2 comments

Comments

@rillian
Copy link
Contributor

rillian commented Jul 16, 2010

The following code from the manual fails with rustboot 700e522.

$ rustboot sum.rs && ./sum
E:Assembly error: unrecognized quad 41: [edi + -(0xc + <frame spill fixup>.msz)] =  [edi + -(0xc + <frame spill fixup>.msz)] add [esi + -(0x10 + <frame spill fixup>.msz)]

$ cat sum.rs 
iter range(int a, int b) -> int {
  check (a < b);

  let int i = a;
  while (i < b) {
    put i;
    i += 1;
  }
}

fn main() {
  let int sum = 0;
  for each (int x in range(0, 100)) {
    sum += x;
  }

  log sum;
}
@graydon
Copy link
Contributor

graydon commented Jul 17, 2010

How embarrassing. Thanks for the report, I'll look into it.

@graydon
Copy link
Contributor

graydon commented Jul 22, 2010

Fix mem op= mem bug in trans.ml (via not terribly good fix). Closed by c96634a.

arielb1 pushed a commit to arielb1/rust that referenced this issue Apr 10, 2015
kazcw pushed a commit to kazcw/rust that referenced this issue Oct 23, 2018
* Add _mm_cmp*_ps variant (SSE)

* Add _mm_comi{eq,lt,le,gt,ge,neq}_ss instructions (sse)

* Add _mm_ucomi*_ss instructions SSE

They all compile down to the same x86 instruction, UCOMISS, whereas the
_mm_comi*_ss instructions compile down to COMISS. The outputs of both
sets of instructions are exactly the same. The only difference is in
exception handling. I therefore added a single test case which tests
their different effect on the MXCSR register (_mm_getcsr) of
_mm_comieq_ss vs. _mm_ucomieq_ss. Together with the tests about emitting
the right instruction, no tests further tests are needed for the other
variants.

* Avoid constant-folding test case
dlrobertson pushed a commit to dlrobertson/rust that referenced this issue Nov 29, 2018
Non-ASCII chars in identifiers aren't supported yet
eddyb pushed a commit to eddyb/rust that referenced this issue Jun 30, 2020
Rustup to rustc 1.40.0-nightly (87cbf0a 2019-11-01)
bjorn3 pushed a commit to bjorn3/rust that referenced this issue Dec 31, 2021
* Use new initialization functions

* Fix for new reflection patch

* Fix for new TLS patch
jaisnan pushed a commit to jaisnan/rust-dev that referenced this issue Oct 15, 2024
Towards : issue rust-lang#59

Parent branch : main 

Revalidation : 
Per the discussion in
model-checking#59, we have to
build and run Kani from feature/verify-rust-std branch.
To revalidate the verification results, run the following command.
<harness_to_run> can be either num::verify to run all harnesses or
num::verify::<harness_name> (e.g. widening_mul_u16_small) to run a
specific harness.
```
kani verify-std  "path/to/library" \
    --harness <harness_to_run> \
    -Z unstable-options \
    -Z function-contracts \
    -Z mem-predicates
```
This issue was closed.
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

2 participants