Skip to content

v0.95 "With You, Forever"

Latest
Compare
Choose a tag to compare
@AkarinVS AkarinVS released this 09 Oct 08:42
· 23 commits to master since this release

This release introduces bitwise and/or/xor/not (bitand, bitor, bitxor, bitnot) operators.

Internally they will operate on 32-bit integer values, and floating point values will be implicitly converted to integers, so it should be fine for <24-bit integer clips, but if you want to process 24-32b integer clips, you have to use enable opt=1 (and beware that in this mode overflows from operators like + /* will wrap around instead of saturate.)

Even if opt=0, lexpr will try to operate on integers as much as possible (e.g. x y bitxor 0x7f8b bitand will not involve any floating point to integer conversions if both clips are integer.)

Just note that they do not operate on the raw bit patterns of (floating point) values, so you can't use z x bitnot bitand z bitnot y bitand bitor to implement z x y ?.