diff options
author | RSDuck <rsduck@users.noreply.github.com> | 2019-08-25 12:28:48 +0200 |
---|---|---|
committer | RSDuck <rsduck@users.noreply.github.com> | 2020-04-26 13:05:00 +0200 |
commit | 5ea91b8a039e0735ac5cb102e2375c26c4f7a150 (patch) | |
tree | 197761d920867febb0b6f7a5c1947fe6fc8e13b6 /src/ARM_InstrInfo.h | |
parent | 03ab7f1645f5a5c8427bc53a12f417845a17c980 (diff) |
optimise away unneeded flag sets
- especially useful for thumb code and larger max block sizes
- can still be improved upon
Diffstat (limited to 'src/ARM_InstrInfo.h')
-rw-r--r-- | src/ARM_InstrInfo.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/ARM_InstrInfo.h b/src/ARM_InstrInfo.h index 4fe9b10..5336837 100644 --- a/src/ARM_InstrInfo.h +++ b/src/ARM_InstrInfo.h @@ -215,11 +215,24 @@ enum tk_Count }; +enum +{ + flag_N = 1 << 3, + flag_Z = 1 << 2, + flag_C = 1 << 1, + flag_V = 1 << 0, +}; + struct Info { u16 DstRegs, SrcRegs; u16 Kind; + u8 ReadFlags; + // lower 4 bits - set always + // upper 4 bits - might set flag + u8 WriteFlags; + bool EndBlock; bool Branches() { |