summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/vendorcode/amd/agesa/Include/gcc-intrin.h2
-rw-r--r--src/vendorcode/amd/agesa/Lib/amdlib.c38
2 files changed, 22 insertions, 18 deletions
diff --git a/src/vendorcode/amd/agesa/Include/gcc-intrin.h b/src/vendorcode/amd/agesa/Include/gcc-intrin.h
index bacd83c1d6..58438b9815 100644
--- a/src/vendorcode/amd/agesa/Include/gcc-intrin.h
+++ b/src/vendorcode/amd/agesa/Include/gcc-intrin.h
@@ -572,7 +572,6 @@ static __inline__ __attribute__((always_inline)) void _mm_stream_si128_fs (void
data = (__m128i) __builtin_ia32_lddqu ((char const *)__B);
_mm_stream_si128_fs2 (__A, data);
}
-#endif
static __inline__ __attribute__((always_inline)) void _mm_clflush_fs (void *__A)
{
@@ -589,6 +588,7 @@ static __inline __attribute__(( __always_inline__)) void _mm_sfence (void)
{
__builtin_ia32_sfence ();
}
+#endif
static __inline__ __attribute__((always_inline)) void __stosb(unsigned char *dest, unsigned char data, size_t count)
{
diff --git a/src/vendorcode/amd/agesa/Lib/amdlib.c b/src/vendorcode/amd/agesa/Lib/amdlib.c
index 1a30dd2f7a..192e34d1e5 100644
--- a/src/vendorcode/amd/agesa/Lib/amdlib.c
+++ b/src/vendorcode/amd/agesa/Lib/amdlib.c
@@ -401,6 +401,8 @@ LibAmdSimNowEnterDebugger (
};
((VOID (*)(VOID)) (size_t) opcode) (); // call the function
}
+
+#ifdef __SSE3__
VOID F10RevDProbeFilterCritical (
IN PCI_ADDR PciAddress,
IN UINT32 PciRegister
@@ -416,23 +418,7 @@ VOID F10RevDProbeFilterCritical (
_mm_mfence ();
__writemsr (0xC001001F, msrsave);
}
-VOID
-IdsOutPort (
- IN UINT32 Addr,
- IN UINT32 Value,
- IN UINT32 Flag
- )
-{
- __outdword ((UINT16) Addr, Value);
-}
-VOID
-StopHere (
- VOID
- )
-{
- VOLATILE UINTN x = 1;
- while (x);
-}
+
VOID
LibAmdCLFlush (
IN UINT64 Address,
@@ -450,7 +436,25 @@ LibAmdCLFlush (
}
RestoreHwcr (hwcrSave);
}
+#endif //__SSE3__
+VOID
+IdsOutPort (
+ IN UINT32 Addr,
+ IN UINT32 Value,
+ IN UINT32 Flag
+ )
+{
+ __outdword ((UINT16) Addr, Value);
+}
+VOID
+StopHere (
+ VOID
+ )
+{
+ VOLATILE UINTN x = 1;
+ while (x);
+}
/*---------------------------------------------------------------------------------------*/
/**