Skip to content

unrecognized quad 41 with iter #111

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

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.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants