Skip to content

Commit fe7b626

Browse files
committed
feat(hir): add u8_not unary intrinsic
1 parent 839242c commit fe7b626

2 files changed

Lines changed: 14 additions & 0 deletions

File tree

src/main.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,19 @@ mod test {
527527
);
528528
}
529529

530+
#[test]
531+
fn unary_intrinsic() {
532+
assert_eq!(
533+
run(r#"@intrinsic
534+
extern fn u8_not(n: u8) -> u8;
535+
536+
fn main() -> u8 {
537+
u8_not(183)
538+
}"#),
539+
72
540+
);
541+
}
542+
530543
#[test]
531544
fn add_overflow() {
532545
assert_eq!(

src/passes/hir_gen/annotations/intrinsic.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,4 +213,5 @@ macro_rules! intrinsics {
213213
intrinsics! {
214214
u8_add_wrapping(lhs: u8, rhs: u8) -> u8 { BinaryOperation(Plus) };
215215
u8_add_overflow(lhs: u8, rhs: u8) -> (u8, bool) { BinaryOperation(PlusWithOverflow) };
216+
u8_not(n: u8) -> u8 { UnaryOperation(Not) };
216217
}

0 commit comments

Comments
 (0)