cranelift: Remove of/nof overflow flags from icmp (#4879)
* cranelift: Remove of/nof overflow flags from icmp Neither Wasmtime nor cg-clif use these flags under any circumstances. From discussion on #3060 I see it's long been unclear what purpose these flags served. Fixes #3060, fixes #4406, and fixes #4875... by deleting all the code that could have been buggy. This changes the cranelift-fuzzgen input format by removing some IntCC options, so I've gone ahead and enabled I128 icmp tests at the same time. Since only the of/nof cases were failing before, I expect these to work. * Restore trapif tests It's still useful to validate that iadd_ifcout's iflags result can be forwarded correctly to trapif, and for that purpose it doesn't really matter what condition code is checked.
This commit is contained in:
@@ -1005,7 +1005,7 @@ impl<'a> FunctionBuilder<'a> {
|
||||
/// misbehave as described in [`MemFlags::aligned`].
|
||||
///
|
||||
/// Note that `memcmp` is a *big-endian* and *unsigned* comparison.
|
||||
/// As such, this panics when called with `IntCC::Signed*` or `IntCC::*Overflow`.
|
||||
/// As such, this panics when called with `IntCC::Signed*`.
|
||||
pub fn emit_small_memory_compare(
|
||||
&mut self,
|
||||
config: TargetFrontendConfig,
|
||||
@@ -1034,9 +1034,6 @@ impl<'a> FunctionBuilder<'a> {
|
||||
| SignedLessThanOrEqual => {
|
||||
panic!("Signed comparison {} not supported by memcmp", int_cc)
|
||||
}
|
||||
Overflow | NotOverflow => {
|
||||
panic!("Overflow comparison {} not supported by memcmp", int_cc)
|
||||
}
|
||||
};
|
||||
|
||||
if size == 0 {
|
||||
|
||||
Reference in New Issue
Block a user