From fecd77ca5b872b2aa97e6719b69970bdd38675a7 Mon Sep 17 00:00:00 2001 From: jmcmullan Date: Wed, 13 Jul 2011 05:13:18 +0000 Subject: [PATCH] loadseg: Don't call CacheClearE on AOS 1.3 and earlier Signed-off-by: Jason S. McMullan git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@40061 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- compiler/loadseg/loadsegment_aos.c | 5 ++++- compiler/loadseg/loadsegment_elf.c | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/compiler/loadseg/loadsegment_aos.c b/compiler/loadseg/loadsegment_aos.c index ce63b4e15d..8905a1a1a9 100644 --- a/compiler/loadseg/loadsegment_aos.c +++ b/compiler/loadseg/loadsegment_aos.c @@ -460,7 +460,10 @@ done: for (t = first; t < numhunks && t <= last; t++) { hunksize = *((ULONG*)BADDR(hunktab[t]) - 1); - if (hunksize) + /* We check for SysBase's lib_Version, since some + * users of this library will be running on AOS 1.3 or lower + */ + if (hunksize && SysBase->LibNode.lib_Version >= 36) { CacheClearE(BADDR(hunktab[t]), hunksize, CACRF_ClearI | CACRF_ClearD); } diff --git a/compiler/loadseg/loadsegment_elf.c b/compiler/loadseg/loadsegment_elf.c index f9eb6db882..9877d420eb 100644 --- a/compiler/loadseg/loadsegment_elf.c +++ b/compiler/loadseg/loadsegment_elf.c @@ -759,6 +759,10 @@ error: end: /* Clear the caches to let the CPU see the new data and instructions */ + /* We check for SysBase's lib_Version, since some + * users of this library will be running on AOS 1.3 or lower + */ + if (SysBase->LibNode.lib_Version >= 36) { BPTR curr = hunks; while (curr) -- 2.11.4.GIT