diff options
author | Till Straumann <strauman@slac.stanford.edu> | 2009-12-02 00:22:42 +0000 |
---|---|---|
committer | Till Straumann <strauman@slac.stanford.edu> | 2009-12-02 00:22:42 +0000 |
commit | 10098f951d82ee738b6b428f63c2e9f3206890d4 (patch) | |
tree | a8434f4b7ef42153446ddc92170ec4012d4f9c32 | |
parent | 2009-12-01 Joel Sherrill <joel.sherrill@OARcorp.com> (diff) | |
download | rtems-10098f951d82ee738b6b428f63c2e9f3206890d4.tar.bz2 |
2009-12-01 Till Straumann <strauman@slac.stanford.edu>
* mpc6xx/mmu/bat.c, mpc6xx/mmu/pte121.c: skip data-
streaming (dssall etc.) instructions on PPC_PSIM
currently (unimplemented by PSIM :-( ).
-rw-r--r-- | c/src/lib/libcpu/powerpc/ChangeLog | 6 | ||||
-rw-r--r-- | c/src/lib/libcpu/powerpc/mpc6xx/mmu/bat.c | 3 | ||||
-rw-r--r-- | c/src/lib/libcpu/powerpc/mpc6xx/mmu/pte121.c | 4 |
3 files changed, 11 insertions, 2 deletions
diff --git a/c/src/lib/libcpu/powerpc/ChangeLog b/c/src/lib/libcpu/powerpc/ChangeLog index 793c0c254f..2dbad33af0 100644 --- a/c/src/lib/libcpu/powerpc/ChangeLog +++ b/c/src/lib/libcpu/powerpc/ChangeLog @@ -1,3 +1,9 @@ +2009-12-01 Till Straumann <strauman@slac.stanford.edu> + + * mpc6xx/mmu/bat.c, mpc6xx/mmu/pte121.c: skip data- + streaming (dssall etc.) instructions on PPC_PSIM + currently (unimplemented by PSIM :-( ). + 2009-11-17 Till Straumann <strauman@slac.stanford.edu> * new-exceptions/bspsupport/ppc_exc_categories.c: diff --git a/c/src/lib/libcpu/powerpc/mpc6xx/mmu/bat.c b/c/src/lib/libcpu/powerpc/mpc6xx/mmu/bat.c index f5119800fb..b227686757 100644 --- a/c/src/lib/libcpu/powerpc/mpc6xx/mmu/bat.c +++ b/c/src/lib/libcpu/powerpc/mpc6xx/mmu/bat.c @@ -211,8 +211,9 @@ do_dssall (void) * MSR_VE is set hoping that * a) on non-altivec CPUs MSR_VE reads as zero * b) all altivec CPUs use the same bit + * NOTE: psim doesn't implement dssall so we skip if we run on psim */ - if (_read_MSR () & MSR_VE) { + if ( (_read_MSR () & MSR_VE) && PPC_PSIM != get_ppc_cpu_type() ) { /* this construct is needed because we don't know * if this file is compiled with -maltivec. * (I plan to add altivec support outside of diff --git a/c/src/lib/libcpu/powerpc/mpc6xx/mmu/pte121.c b/c/src/lib/libcpu/powerpc/mpc6xx/mmu/pte121.c index d4a891c7dd..4389d392e4 100644 --- a/c/src/lib/libcpu/powerpc/mpc6xx/mmu/pte121.c +++ b/c/src/lib/libcpu/powerpc/mpc6xx/mmu/pte121.c @@ -905,8 +905,10 @@ do_dssall (void) * MSR_VE is set hoping that * a) on non-altivec CPUs MSR_VE reads as zero * b) all altivec CPUs use the same bit + * + * NOTE: psim doesn't implement dssall so we skip if we run on psim */ - if (_read_MSR () & MSR_VE) { + if ( (_read_MSR () & MSR_VE) && PPC_PSIM != get_ppc_cpu_type() ) { /* this construct is needed because we don't know * if this file is compiled with -maltivec. * (I plan to add altivec support outside of |