diff options
| author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-11-09 23:53:45 +0100 |
|---|---|---|
| committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-11-09 23:53:45 +0100 |
| commit | 98469166098170fc67d3eb043656c3e79190b31f (patch) | |
| tree | d38b631f527a85e7393867b3381230271c12194f /validation/optim/zext-cmpu.c | |
| parent | 55d44f307c12fe0241d0a12e1dfe0320a54510af (diff) | |
| parent | c60237251a55984b1fcf6302d25650d35533dc2a (diff) | |
| download | sparse-dev-98469166098170fc67d3eb043656c3e79190b31f.tar.gz | |
Merge branch 'optim-cmp' into next
* simplify & canonicalize compares
Diffstat (limited to 'validation/optim/zext-cmpu.c')
| -rw-r--r-- | validation/optim/zext-cmpu.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/validation/optim/zext-cmpu.c b/validation/optim/zext-cmpu.c new file mode 100644 index 00000000..9758e071 --- /dev/null +++ b/validation/optim/zext-cmpu.c @@ -0,0 +1,16 @@ +int ltg(unsigned x) { return (((long long)x) < 0x100000000ULL) == 1; } +int ltl(unsigned x) { return (((long long)x) < 0x0ffffffffULL) == (x < 0xffffffffU); } +int leg(unsigned x) { return (((long long)x) <= 0x0ffffffffULL) == 1; } +int lel(unsigned x) { return (((long long)x) <= 0x0fffffffeULL) == (x <= 0xfffffffeU); } +int geg(unsigned x) { return (((long long)x) >= 0x100000000ULL) == 0; } +int gel(unsigned x) { return (((long long)x) >= 0x0ffffffffULL) == (x >= 0xffffffffU); } +int gtg(unsigned x) { return (((long long)x) > 0x0ffffffffULL) == 0; } +int gtl(unsigned x) { return (((long long)x) > 0x0fffffffeULL) == (x > 0xfffffffeU); } + +/* + * check-name: zext-cmpu + * check-command: test-linearize -Wno-decl $file + * + * check-output-ignore + * check-output-returns: 1 + */ |
