This is a good question. Matlab's JIT was partially documented in Matlab 6.5 (2001), but afterwards MathWorks avoided to publish details. They have the good reason, that publishing details of the JIT would motivate users to adjust their programs to the JIT, but they want to adjust the JIT to the programs.
Some tests might show, that the mentioned limitations are not matching anymore.
function s = stupidTest(x)
Calling this with 2D arrays has the same speed as with 3D arrays, if the number of elements is equal.
Impeding the JIT on purpose slows the code down, e.g. by s = eval('0');
Yes, the test case is very basic. But I'd avoid to adjust the code too much to assumed properties of the JIT.