(self)
| 710 | ) |
| 711 | |
| 712 | def test_comparison_op(self) -> None: |
| 713 | # signed |
| 714 | self.assert_emit( |
| 715 | ComparisonOp(self.s1, self.s2, ComparisonOp.SLT, 1), |
| 716 | """cpy_r_r0 = (Py_ssize_t)cpy_r_s1 < (Py_ssize_t)cpy_r_s2;""", |
| 717 | ) |
| 718 | self.assert_emit( |
| 719 | ComparisonOp(self.i32, self.i32_1, ComparisonOp.SLT, 1), |
| 720 | """cpy_r_r0 = cpy_r_i32 < cpy_r_i32_1;""", |
| 721 | ) |
| 722 | self.assert_emit( |
| 723 | ComparisonOp(self.i64, self.i64_1, ComparisonOp.SLT, 1), |
| 724 | """cpy_r_r0 = cpy_r_i64 < cpy_r_i64_1;""", |
| 725 | ) |
| 726 | # unsigned |
| 727 | self.assert_emit( |
| 728 | ComparisonOp(self.s1, self.s2, ComparisonOp.ULT, 1), |
| 729 | """cpy_r_r0 = cpy_r_s1 < cpy_r_s2;""", |
| 730 | ) |
| 731 | self.assert_emit( |
| 732 | ComparisonOp(self.i32, self.i32_1, ComparisonOp.ULT, 1), |
| 733 | """cpy_r_r0 = (uint32_t)cpy_r_i32 < (uint32_t)cpy_r_i32_1;""", |
| 734 | ) |
| 735 | self.assert_emit( |
| 736 | ComparisonOp(self.i64, self.i64_1, ComparisonOp.ULT, 1), |
| 737 | """cpy_r_r0 = (uint64_t)cpy_r_i64 < (uint64_t)cpy_r_i64_1;""", |
| 738 | ) |
| 739 | |
| 740 | # object type |
| 741 | self.assert_emit( |
| 742 | ComparisonOp(self.o, self.o2, ComparisonOp.EQ, 1), |
| 743 | """cpy_r_r0 = cpy_r_o == cpy_r_o2;""", |
| 744 | ) |
| 745 | self.assert_emit( |
| 746 | ComparisonOp(self.o, self.o2, ComparisonOp.NEQ, 1), |
| 747 | """cpy_r_r0 = cpy_r_o != cpy_r_o2;""", |
| 748 | ) |
| 749 | |
| 750 | def test_load_mem(self) -> None: |
| 751 | self.assert_emit(LoadMem(bool_rprimitive, self.ptr), """cpy_r_r0 = *(char *)cpy_r_ptr;""") |
nothing calls this directly
no test coverage detected