[quake3-bugzilla] [Bug 4977] New: x86 qvm improvements
bugzilla-daemon at icculus.org
bugzilla-daemon at icculus.org
Thu May 5 10:29:49 EDT 2011
https://bugzilla.icculus.org/show_bug.cgi?id=4977
Summary: x86 qvm improvements
Product: ioquake3
Version: SVN HEAD
Platform: PC
OS/Version: other
Status: NEW
Severity: enhancement
Priority: P3
Component: Platform
AssignedTo: zakk at icculus.org
ReportedBy: mine at ukr.net
QAContact: quake3-bugzilla at icculus.org
Created attachment 2691
--> https://bugzilla.icculus.org/attachment.cgi?id=2691
Patch
In x86 jit compiler there is variable callMask which is just not used properly
Suggested patch adds call-out-of-qvm protection which prevents code execution
out of the compiled segment. Also it will help to avoid crashes that may be
caused by such code:
int (*func)(void);
func = (void*)0x07400000; // in qvm it is actually an instruction count not
address
func();
Similar call in actual code segment will probably cause crash but its still
better than nothing IMO
Also, more or less modern x86 CPUs have branch predictors so execution of added
cmp/jae instruction costs almost nothing
--
Configure bugmail: https://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the quake3-bugzilla
mailing list