MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / commit

Method commit

source/emulation/cpu/jit/jit.cpp:886–912  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

884}
885
886void JitFlags::commit(RegPtr result, RegPtr dst) {
887 if (flags) {
888 jit->storeLazyFlagType(flagsType);
889 jit->currentLazyFlags = flagsType;
890
891 if (oldCF && flags->usesOldCF(needsToSetFlags)) {
892 jit->storeLazyFlagsOldCF(oldCF);
893 }
894 if (flags->usesSrc(needsToSetFlags)) {
895 if (src) {
896 jit->storeLazyFlagsSrc(src);
897 } else {
898 jit->storeLazyFlagsSrc(srcValue);
899 }
900 }
901 src = nullptr;
902 if (flags->usesDst(needsToSetFlags)) {
903 if (!dst) {
904 dst = this->dst;
905 }
906 jit->storeLazyFlagsDest(dst);
907 }
908 if (flags->usesResult(needsToSetFlags)) {
909 jit->storeLazyFlagsResult(result);
910 }
911 }
912}
913
914void JitFlags::copyDest(RegPtr dst) {
915 if (flags && flags->usesDst(needsToSetFlags)) {

Callers 3

dynamic_cmpxchg_lockMethod · 0.45
dynamic_arith_lockMethod · 0.45

Calls 9

storeLazyFlagsOldCFMethod · 0.80
storeLazyFlagTypeMethod · 0.45
usesOldCFMethod · 0.45
usesSrcMethod · 0.45
storeLazyFlagsSrcMethod · 0.45
usesDstMethod · 0.45
storeLazyFlagsDestMethod · 0.45
usesResultMethod · 0.45
storeLazyFlagsResultMethod · 0.45

Tested by

no test coverage detected