Changeset 6f8a426 in mainline for arch/ppc32/src


Ignore:
Timestamp:
2006-02-21T00:04:20Z (20 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0fad93a
Parents:
cd92528
Message:

indentation changes
ppc32 fpu context save/restore
ppc32 CPU version
ppc32 memcpy

Location:
arch/ppc32/src
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • arch/ppc32/src/asm.S

    rcd92528 r6f8a426  
    8686
    8787memcpy:
    88         # TODO
     88        srwi. r7, r5, 3
     89        addi r6, r3, -4
     90        addi r4, r4, -4
     91        beq     2f
     92       
     93        andi. r0, r6, 3
     94        mtctr r7
     95        bne 5f
     96       
     97        1:
     98       
     99        lwz r7, 4(r4)
     100        lwzu r8, 8(r4)
     101        stw r7, 4(r6)
     102        stwu r8, 8(r6)
     103        bdnz 1b
     104       
     105        andi. r5, r5, 7
     106       
     107        2:
     108       
     109        cmplwi 0, r5, 4
     110        blt 3f
     111       
     112        lwzu r0, 4(r4)
     113        addi r5, r5, -4
     114        stwu r0, 4(r6)
     115       
     116        3:
     117       
     118        cmpwi 0, r5, 0
     119        beqlr
     120        mtctr r5
     121        addi r4, r4, 3
     122        addi r6, r6, 3
     123       
     124        4:
     125       
     126        lbzu r0, 1(r4)
     127        stbu r0, 1(r6)
     128        bdnz 4b
    89129        blr
     130       
     131        5:
     132       
     133        subfic r0, r0, 4
     134        mtctr r0
     135       
     136        6:
     137       
     138        lbz r7, 4(r4)
     139        addi r4, r4, 1
     140        stb r7, 4(r6)
     141        addi r6, r6, 1
     142        bdnz 6b
     143        subf r5, r0, r5
     144        rlwinm. r7, r5, 32-3, 3, 31
     145        beq 2b
     146        mtctr r7
     147        b 1b
  • arch/ppc32/src/cpu/cpu.c

    rcd92528 r6f8a426  
    2828
    2929#include <arch/cpu.h>
     30#include <arch/cpuid.h>
    3031#include <cpu.h>
    3132
     
    4142void cpu_identify(void)
    4243{
     44        cpu_info_t info;
     45       
     46        cpu_version(&info);
     47        CPU->arch.version = info.version;
     48        CPU->arch.revision = info.revision;
    4349}
    4450
    4551void cpu_print_report(cpu_t *m)
    4652{
    47         printf("cpu%d:\n", m->id);
     53        printf("cpu%d: version=%d, revision=%d\n", m->id, m->arch.version, m->arch.revision);
    4854}
Note: See TracChangeset for help on using the changeset viewer.