Question: A hypothetical scenario:

I've got a project whose source compliance level is specified to 1.5.
Now I compile this project with two different JDKs: At first with JDK 6 Update 7 and then with JDK 6 Update 20.

Do these two different JDKs produce different Java byte code, although they only differ in their Update version?

Answer: 
There is nothing that would stop the different versions from generating different bytecodes, as long as it's compliant to the *behavior* specified in the JLS. The JLS leaves many implementation details to vary from one implementation to another.
The bytecode could slightly differ, but this is nothing to worry about since it will be still compatible. 

What really will be executed depends on JIT.