diff options
| author | Evan Cheng <evan.cheng@apple.com> | 2010-04-01 05:58:17 +0000 |
|---|---|---|
| committer | Evan Cheng <evan.cheng@apple.com> | 2010-04-01 05:58:17 +0000 |
| commit | 6c020ea4ffbba2b403a5e14f937047646a54368f (patch) | |
| tree | 19a56b30f819109548c3d601bbf07e3a9c0a4f28 /lib/Target/X86/X86Subtarget.cpp | |
| parent | 453b3bdebbcd34b1f45988a6e7c8f77c7fcec67e (diff) | |
| download | external_llvm-6c020ea4ffbba2b403a5e14f937047646a54368f.zip external_llvm-6c020ea4ffbba2b403a5e14f937047646a54368f.tar.gz external_llvm-6c020ea4ffbba2b403a5e14f937047646a54368f.tar.bz2 | |
Nehalem unaligned memory access is fast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100089 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86Subtarget.cpp')
| -rw-r--r-- | lib/Target/X86/X86Subtarget.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Target/X86/X86Subtarget.cpp b/lib/Target/X86/X86Subtarget.cpp index cd56816..8a0cde4 100644 --- a/lib/Target/X86/X86Subtarget.cpp +++ b/lib/Target/X86/X86Subtarget.cpp @@ -266,6 +266,9 @@ void X86Subtarget::AutoDetectSubtargetFeatures() { unsigned Model = 0; DetectFamilyModel(EAX, Family, Model); IsBTMemSlow = IsAMD || (Family == 6 && Model >= 13); + // If it's Nehalem, unaligned memory access is fast. + if (Family == 15 && Model == 26) + IsUAMemFast = true; GetCpuIDAndInfo(0x80000001, &EAX, &EBX, &ECX, &EDX); HasX86_64 = (EDX >> 29) & 0x1; @@ -286,6 +289,7 @@ X86Subtarget::X86Subtarget(const std::string &TT, const std::string &FS, , HasFMA3(false) , HasFMA4(false) , IsBTMemSlow(false) + , IsUAMemFast(false) , HasVectorUAMem(false) , DarwinVers(0) , stackAlignment(8) |
