Fix bug in Logic Operator conversion
This commit is contained in:
parent
974647b401
commit
8afb2c2572
@ -359,12 +359,12 @@ impl CmpPredicate {
|
||||
use LLVMIntPredicate::*;
|
||||
match (self, signed) {
|
||||
(LT, true) => LLVMIntSLT,
|
||||
(GT, true) => LLVMIntSGT,
|
||||
(LE, true) => LLVMIntSLE,
|
||||
(GT, true) => LLVMIntSGT,
|
||||
(GE, true) => LLVMIntSGE,
|
||||
(LT, false) => LLVMIntULT,
|
||||
(GT, false) => LLVMIntUGT,
|
||||
(LE, false) => LLVMIntULE,
|
||||
(GT, false) => LLVMIntUGT,
|
||||
(GE, false) => LLVMIntUGE,
|
||||
(EQ, _) => LLVMIntEQ,
|
||||
(NE, _) => LLVMIntNE,
|
||||
|
@ -1,12 +1,12 @@
|
||||
// Main
|
||||
fn main() -> bool {
|
||||
return 1 == fibonacci(3);
|
||||
return 2 == fibonacci(3);
|
||||
}
|
||||
|
||||
// Fibonacci
|
||||
fn fibonacci(value: u16) -> u16 {
|
||||
if value < 3 {
|
||||
if value <= 2 {
|
||||
return 1;
|
||||
}
|
||||
return 5 + fibonacci(value - 2);
|
||||
return fibonacci(value - 1) + fibonacci(value - 2);
|
||||
}
|
||||
|
@ -291,7 +291,7 @@ impl mir::LogicOperator {
|
||||
match self {
|
||||
mir::LogicOperator::LT => CmpPredicate::LT,
|
||||
mir::LogicOperator::GT => CmpPredicate::GT,
|
||||
mir::LogicOperator::LE => CmpPredicate::LT,
|
||||
mir::LogicOperator::LE => CmpPredicate::LE,
|
||||
mir::LogicOperator::GE => CmpPredicate::GE,
|
||||
mir::LogicOperator::EQ => CmpPredicate::EQ,
|
||||
mir::LogicOperator::NE => CmpPredicate::NE,
|
||||
|
Loading…
Reference in New Issue
Block a user