Workaround broken jump tables on x86-64 COFF.

llvm-svn: 111792
This commit is contained in:
Michael J. Spencer 2010-08-23 04:45:37 +00:00
parent c3847a8134
commit e87231232a
2 changed files with 7 additions and 0 deletions

View File

@ -20,6 +20,7 @@ MCAsmInfoCOFF::MCAsmInfoCOFF() {
GlobalPrefix = "_";
COMMDirectiveAlignmentIsInBytes = false;
HasLCOMMDirective = true;
HasSetDirective = false;
HasDotTypeDotSizeDirective = false;
HasSingleParameterDotFile = false;
PrivateGlobalPrefix = "L"; // Prefix for private global symbols

View File

@ -1029,6 +1029,12 @@ X86TargetLowering::X86TargetLowering(X86TargetMachine &TM)
maxStoresPerMemmove = 3; // For @llvm.memmove -> sequence of stores
setPrefLoopAlignment(16);
benefitFromCodePlacementOpt = true;
// FIXME: Jump tables are currently broken for 64 bit COFF.
// See PR7960.
if (Subtarget->is64Bit() && Subtarget->isTargetCOFF()) {
DisableJumpTables = true;
}
}