[x86] Fix isOffsetSuitableForCodeModel kernel code model offset
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Thu, 4 Dec 2014 20:36:06 +0000 (20:36 +0000)
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Thu, 4 Dec 2014 20:36:06 +0000 (20:36 +0000)
Offset == 0 is a valid offset for kernel code model according to the
x86_64 System V ABI. Found by inspection, no testcase.

llvm-svn: 223383

llvm/lib/Target/X86/X86ISelLowering.cpp

index 8c66e97..7976d33 100644 (file)
@@ -3673,7 +3673,7 @@ bool X86::isOffsetSuitableForCodeModel(int64_t Offset, CodeModel::Model M,
   // For kernel code model we know that all object resist in the negative half
   // of 32bits address space. We may not accept negative offsets, since they may
   // be just off and we may accept pretty large positive ones.
-  if (M == CodeModel::Kernel && Offset > 0)
+  if (M == CodeModel::Kernel && Offset >= 0)
     return true;
 
   return false;