Prevent extra rebuild of fs.img by keeping intermediate object files.
Correct a security bug in copyuvm()

copyuvm() should not allow new copied pages to inherit more
permissions than the original pages.
Merge remote-tracking branch 'origin/master' into clang
Add some information about the ASM .code16 directive and LLVM/clang.
I found: http://osdir.com/ml/grub-devel-gnu/2010-12/msg00015.html

"""
On Thu, Dec 02, 2010 at 01:15:10PM -0800, Seth Goldberg wrote:
When assembling grub-core/kern/i386/pc/startup.S, gas on some platforms
chokes on this line:

movl $((LOCAL(bypass_table_end) - LOCAL(bypass_table)) / 2), %ecx

Because on non i386-linux targets, '/' is used as a comment delimiter
for compatibility purposes. This can be overridden with the --divide
switch.

Since the default for gas on these platforms is to use he division
operator as a comment delimiter, the "-Wa,--divide" flags need to be
passed on the gcc command line when assembling such files.
Can we just use>> 1 instead?

Sure, that works for me :).
"""

Which led to two thoughts, 1) we're not using gas to assemble this code so we don't need this compile time option, and 2) for both portability speed where we do divide by 2 the bit shift operator is a much better solution.  So I've removed the compiler flag.