Changeset 100 for trunk/Softwares


Ignore:
Timestamp:
Jan 8, 2009, 2:06:27 PM (15 years ago)
Author:
rosiere
Message:

1) Bug fix (Operation, Instruction)
2) Modif Return Address Stack
3) Add Soft Test
4) Add Soc Test

Location:
trunk
Files:
144 added
5 deleted
16 edited
24 copied
13 moved

Legend:

Unmodified
Added
Removed
  • trunk

    • Property svn:ignore set to
      Makefile.flags
      Makefile.tools
      Makefile.tools_path
  • trunk/Softwares/Basic_test/Makefile

    r81 r100  
     1#
     2# $Id$
     3#
     4# [ Description ]
     5#
     6# Makefile
     7#
     8
    19# common definition
    2 include                 Makefile.morpheo
     10DIR_SRC                         = ./src
     11DIR_C                           = $(DIR_SRC)/c
     12DIR_ASM                         = $(DIR_SRC)/asm
     13DIR_SYS                         = $(DIR_SRC)/sys
     14DIR_INC                         = $(DIR_SRC)/include
     15DIR_LDSCRIPT                    = ../Common/ldscript/
    316
    4 #-----[ Directory ]---------------------------------------------------------------
    5 
    6 DIR_LOCAL               = .
    7 DIR_LOCAL_C             = $(DIR_LOCAL)/src/c
    8 DIR_LOCAL_ASM           = $(DIR_LOCAL)/src/asm
    9 DIR_LOCAL_SYS           = $(DIR_LOCAL)/src/sys
    10 DIR_LOCAL_INC           = $(DIR_LOCAL)/src/c/include
    11 
    12 DIR_GLOBAL              = $(SOFT)/Global.or32
    13 DIR_GLOBAL_C            = $(DIR_GLOBAL)/src/c
    14 DIR_GLOBAL_ASM          = $(DIR_GLOBAL)/src/asm
    15 DIR_GLOBAL_SYS          = $(DIR_GLOBAL)/src/sys
    16 DIR_GLOBAL_INC          = $(DIR_GLOBAL)/include
    17 
    18 DIR_INC                 = -I$(DIR_LOCAL_INC) -I$(DIR_GLOBAL_INC)
    19 DIR_OBJ                 = obj
    20 DIR_BIN                 = bin
    21 
    22 EXE                     = soft
     17INCDIR                          = -I$(DIR_INC) -I$(DIR_COMMON_INC) $(NEWLIB_INCDIR)
     18LIBDIR                          = $(NEWLIB_LIBDIR)
     19LIBNAME                         = $(NEWLIB_LIBNAME)
    2320
    2421#-----[ Files ]-------------------------------------------------------------------
    25 OBJ_ASM                 = $(patsubst $(DIR_LOCAL_ASM)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_LOCAL_ASM)/*.s))      \
    26                           $(patsubst $(DIR_GLOBAL_ASM)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_GLOBAL_ASM)/*.s))
    27 OBJ_SYS                 = $(patsubst $(DIR_LOCAL_SYS)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_LOCAL_SYS)/*.s))      \
    28                           $(patsubst $(DIR_GLOBAL_SYS)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_GLOBAL_SYS)/*.s))
    29 OBJ_C                   = $(patsubst $(DIR_LOCAL_C)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_LOCAL_C)/*.c))          \
    30                           $(patsubst $(DIR_GLOBAL_C)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_GLOBAL_C)/*.c))
     22OBJECTS                         =       $(OBJECTS_COMMON)                                                       \
     23                                        $(patsubst $(DIR_ASM)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_ASM)/*.s))    \
     24                                        $(patsubst $(DIR_SYS)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SYS)/*.s))    \
     25                                        $(patsubst $(DIR_C)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_C)/*.c))
    3126
    32 OBJ                     = $(OBJ_SYS) $(OBJ_ASM) $(OBJ_C)
    33 
    34 #-----[ Rules ]-------------------------------------------------------------------
    35 .PRECIOUS               : $(DIR_BIN)/%.x $(DIR_OBJ)/%.o $(DIR_OBJ)/%.a
    36 
    37 all                     : test_env $(DIR_BIN)/$(EXE).x.txt
    38 
    39 $(DIR_BIN)/%.x.txt      : $(DIR_BIN)/%.x
    40                         @\
    41                         $(ECHO) "List symbols        of $*";\
    42                         $(NM)      $(NM_OPT)      $^ > $@.nm;\
    43                         $(ECHO) "Display information of $*";\
    44                         $(OBJDUMP) $(OBJDUMP_OPT) $^ > $@;
    45 
    46 $(DIR_BIN)/%.x          : $(OBJ_SYS) $(OBJ)
    47                         @\
    48                         $(ECHO) "Linkage             of $*";\
    49                         $(LD) -o $@ $^ $(LD_OPT);
    50 
    51 $(DIR_OBJ)/%.o          : $(DIR_LOCAL_ASM)/%.s 
    52                         @\
    53                         $(ECHO) "Compile             of $*";\
    54                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    55                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    56 #                       @$(AS) $(AS_OPT) $^ -o $@
    57 
    58 $(DIR_OBJ)/%.o          : $(DIR_LOCAL_SYS)/%.s 
    59                         @\
    60                         $(ECHO) "Compile             of $*";\
    61                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    62                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    63 #                       @$(AS) $(AS_OPT) $^ -o $@
    64 
    65 $(DIR_OBJ)/%.o          : $(DIR_LOCAL_C)/%.c
    66                         @\
    67                         $(ECHO) "Compile             of $*";\
    68                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    69                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    70 
    71 $(DIR_OBJ)/%.o          : $(DIR_GLOBAL_ASM)/%.s
    72                         @\
    73                         $(ECHO) "Compile             of $*";\
    74                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    75                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    76 #                       @$(AS) $(AS_OPT) $^ -o $@
    77 
    78 $(DIR_OBJ)/%.o          : $(DIR_GLOBAL_SYS)/%.s
    79                         @\
    80                         $(ECHO) "Compile             of $*";\
    81                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    82                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    83 #                       @$(AS) $(AS_OPT) $^ -o $@
    84 
    85 $(DIR_OBJ)/%.o          : $(DIR_GLOBAL_C)/%.c
    86                         @\
    87                         $(ECHO) "Compile             of $*";\
    88                         $(CC) $(CC_OPT) $(DIR_INC)    -o $@   -c $^ ;\
    89                         $(CC) $(CC_OPT) $(DIR_INC) -S -o $@.s -c $^ ;
    90 
    91 #-----[ Environement ]------------------------------------------------------------
    92 test_env                :
    93 # ifeq ($(origin TOOLS), undefined)
    94 #                       $(error "variable TOOLS is undefined");
    95 # endif
    96 # ifeq ($(origin SOFT), undefined)
    97 #                       $(error "variable SOFT  is undefined");
    98 # endif
    99                         @$(MKDIR) $(DIR_OBJ) $(DIR_BIN)
    100 
    101 #-----[ Maintenance ]-------------------------------------------------------------
    102 clean                   :
    103                         @\
    104                         $(ECHO) "Delete     temporary files              "`$(PWD)`;\
    105                         $(RM) $(DIR_OBJ) $(DIR_BIN);\
    106                         $(MAKE) clean_rec DIR_CLEAN=.;
    107 
    108 #Clean recursive
    109 clean_rec               :
    110                         @\
    111                         $(ECHO) "Delete     temporary files in directory $(DIR_CLEAN)";\
    112                         $(RM) -f $(DIR_CLEAN)/*~;\
    113                         for files in `$(LS) $(DIR_CLEAN)`; do                                   \
    114                                 if $(TEST) -d $(DIR_CLEAN)/$$files;                             \
    115                                 then                                                            \
    116                                         $(MAKE) clean_rec DIR_CLEAN=$(DIR_CLEAN)/$$files;       \
    117                                 fi;                                                             \
    118                         done;
    119 
    120 #-----[ Help ]--------------------------------------------------------------------
    121 help                    :
    122                         @\
    123                         $(ECHO) "";\
    124                         $(ECHO) "List of directive   : ";\
    125                         $(ECHO) " * make             : Compile the software";\
    126                         $(ECHO) " * make clean       : Erase all files generates";\
    127                         $(ECHO) " * make bench_list  : View all benchmark";\
    128                         $(ECHO) " * make bench_exec  : Print the file \"$(FILE_BENCH)\" - it's the Workload";\
    129                         $(ECHO) " * make bench       : Compile the Benchmark Suite";\
    130                         $(ECHO) "";
     27include                         ../Makefile.Software
  • trunk/Softwares/Makefile.Software

    r88 r100  
    1818
    1919EXE                             = soft
     20
     21DIR_COMMON              = $(MORPHEO_TOPLEVEL)/Softwares/Common
     22DIR_COMMON_C            = $(DIR_GLOBAL)/src/c
     23DIR_COMMON_ASM          = $(DIR_GLOBAL)/src/asm
     24DIR_COMMON_SYS          = $(DIR_GLOBAL)/src/sys
     25DIR_COMMON_INC          = $(DIR_GLOBAL)/include
     26
     27OBJECTS_COMMON          =       $(patsubst $(DIR_COMMON_ASM)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_COMMON_ASM)/*.s))      \
     28                                $(patsubst $(DIR_COMMON_SYS)/%.s,$(DIR_OBJ)/%.o,$(wildcard $(DIR_COMMON_SYS)/*.s))      \
     29                                $(patsubst $(DIR_COMMON_C)/%.c,$(DIR_OBJ)/%.o,$(wildcard $(DIR_COMMON_C)/*.c))
     30
    2031
    2132#-----[ To the compilation ]------------------------------------------------------
     
    4354
    4455# Tools's option
    45 OR32_CC_OPT                     = $(INCLUDE) $(OPTIMIZE) -Wlong-long
     56OR32_CC_OPT                     = $(INCDIR) $(OPTIMIZE) -Wlong-long
    4657# -DHAVE_LIBC
    4758OR32_AS_OPT                     =
    48 OR32_LD_OPT                     = -T$(DIR_LDSCRIPT)/or32.ld $(LIBRARY) 
     59OR32_LD_OPT                     = -T$(DIR_LDSCRIPT)/or32.ld $(LIBDIR) $(LIBNAME)
    4960OR32_OBJDUMP_OPT                = -D
    5061OR32_NM_OPT                     = -n
  • trunk/Softwares/Minimal_soft/Makefile

    r98 r100  
    1212DIR_ASM                         = $(DIR_SRC)/asm
    1313DIR_SYS                         = $(DIR_SRC)/sys
    14 DIR_INC                         = $(DIR_C)/include
    15 DIR_LDSCRIPT                    = ../Global/ldscript/
     14DIR_INC                         = $(DIR_SRC)/include
     15DIR_LDSCRIPT                    = ../Common/ldscript/
    1616
    17 INCLUDE                         = -I$(DIR_INC)
    18 LIBRARY                         =
     17INCDIR                          = -I$(DIR_INC)
     18LIBDIR                          =
     19LIBNAME                         =
    1920
    2021#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Minimal_soft/src/c/main.c

    r81 r100  
    1 #include "thread_info.h"
    2 #include "cpu_info.h"
    3 
    41//=====[ main ]=================================================================
    52/*
  • trunk/Softwares/Test/Test_000/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_001/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_002/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_003/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_004/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_005/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_006/Makefile

    r88 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_007/Makefile

    r98 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_008/Makefile

    r98 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_009/Makefile

    r98 r100  
    1313DIR_ASM                         = $(DIR_SRC)/asm
    1414DIR_SYS                         = $(DIR_SRC)/sys
    15 DIR_INC                         = $(DIR_C)/include
    16 DIR_LDSCRIPT                    = $(DIR_SOFT)/Global/ldscript/
     15DIR_INC                         = $(DIR_SRC)/include
     16DIR_LDSCRIPT                    = $(DIR_SOFT)/Common/ldscript/
    1717
    18 INCLUDE                         = -I$(DIR_INC)
    19 LIBRARY                         =
     18INCDIR                          = -I$(DIR_INC)
     19LIBDIR                          =
     20LIBNAME                         =
    2021
    2122#-----[ Files ]-------------------------------------------------------------------
  • trunk/Softwares/Test/Test_009/src/sys/crt0.s

    r98 r100  
    3737                                       (r4)                (r7)
    3838          1) 0x00000000 0x00000000 - 0x00000000 0  0
    39          
    40          */
    41 
    42         /* Mask to read OV (SR[11]), CY (SR[10]) and F (SR[9]) */
    43         l.movhi r5,     hi(0x000000e0)
    44         l.ori   r5, r5, lo(0x000000e0)
    45 
     39          2) 0x14011959 0x25071959 - 0x390832b2 0  0
     40          3) 0xebfee6a7 0xdaf8e6a7 - 0xc6f7cd4e 1  0
     41          4) 0xebfee6a7 0x25071959 - 0x11060000 1  0
     42          5) 0x14011959 0xdaf8e6a7 - 0xeefa0000 0  0
     43          6) 0x87654321 0xabcdef01 - 0x33333222 1  1
     44          7) 0x789abcde 0x08765432 - 0x81111110 0  1
     45          */
     46
     47        /* Mask to read OV (SR[11]), CY (SR[10]) and not F (SR[9]) */
     48        l.movhi r5,     hi(0x00000c00)
     49        l.ori   r5, r5, lo(0x00000c00)
     50       
    4651        /**********/
    4752        /* Test 1 */
     
    7075        l.bnf   _end_ko
    7176        l.nop
     77
     78        /**********/
     79        /* Test 2 */
     80        /**********/
     81        l.movhi r1,     hi(0x14011959) /* RA */
     82        l.ori   r1, r1, lo(0x14011959)
     83        l.movhi r2,     hi(0x25071959) /* RB */
     84        l.ori   r2, r2, lo(0x25071959)
     85        l.movhi r3,     hi(0x390832b2) /* RD wait */
     86        l.ori   r3, r3, lo(0x390832b2)
     87        l.movhi r6,     hi(0x00000000) /* SR wait */
     88        l.ori   r6, r6, lo(0x00000000)
     89       
     90        l.add   r4, r1, r2
     91
     92        /* Test flag */
     93        l.mfspr r7, r0, 17
     94        l.and   r7, r7, r5
     95
     96        l.sfeq  r6, r7
     97        l.bnf   _end_ko
     98        l.nop
     99
     100        /* Test result */
     101        l.sfeq  r3, r4
     102        l.bnf   _end_ko
     103        l.nop
     104
     105        /**********/
     106        /* Test 3 */
     107        /**********/
     108        l.movhi r1,     hi(0xebfee6a7) /* RA */
     109        l.ori   r1, r1, lo(0xebfee6a7)
     110        l.movhi r2,     hi(0xdaf8e6a7) /* RB */
     111        l.ori   r2, r2, lo(0xdaf8e6a7)
     112        l.movhi r3,     hi(0xc6f7cd4e) /* RD wait */
     113        l.ori   r3, r3, lo(0xc6f7cd4e)
     114        l.movhi r6,     hi(0x00000400) /* SR wait */
     115        l.ori   r6, r6, lo(0x00000400)
     116       
     117        l.add   r4, r1, r2
     118
     119        /* Test flag */
     120        l.mfspr r7, r0, 17
     121        l.and   r7, r7, r5
     122
     123        l.sfeq  r6, r7
     124        l.bnf   _end_ko
     125        l.nop
     126
     127        /* Test result */
     128        l.sfeq  r3, r4
     129        l.bnf   _end_ko
     130        l.nop
     131
     132        /**********/
     133        /* Test 4 */
     134        /**********/
     135        l.movhi r1,     hi(0xebfee6a7) /* RA */
     136        l.ori   r1, r1, lo(0xebfee6a7)
     137        l.movhi r2,     hi(0x25071959) /* RB */
     138        l.ori   r2, r2, lo(0x25071959)
     139        l.movhi r3,     hi(0x11060000) /* RD wait */
     140        l.ori   r3, r3, lo(0x11060000)
     141        l.movhi r6,     hi(0x00000400) /* SR wait */
     142        l.ori   r6, r6, lo(0x00000400)
     143       
     144        l.add   r4, r1, r2
     145
     146        /* Test flag */
     147        l.mfspr r7, r0, 17
     148        l.and   r7, r7, r5
     149
     150        l.sfeq  r6, r7
     151        l.bnf   _end_ko
     152        l.nop
     153
     154        /* Test result */
     155        l.sfeq  r3, r4
     156        l.bnf   _end_ko
     157        l.nop
     158
     159        /**********/
     160        /* Test 5 */
     161        /**********/
     162        l.movhi r1,     hi(0x14011959) /* RA */
     163        l.ori   r1, r1, lo(0x14011959)
     164        l.movhi r2,     hi(0xdaf8e6a7) /* RB */
     165        l.ori   r2, r2, lo(0xdaf8e6a7)
     166        l.movhi r3,     hi(0xeefa0000) /* RD wait */
     167        l.ori   r3, r3, lo(0xeefa0000)
     168        l.movhi r6,     hi(0x00000000) /* SR wait */
     169        l.ori   r6, r6, lo(0x00000000)
     170       
     171        l.add   r4, r1, r2
     172
     173        /* Test flag */
     174        l.mfspr r7, r0, 17
     175        l.and   r7, r7, r5
     176
     177        l.sfeq  r6, r7
     178        l.bnf   _end_ko
     179        l.nop
     180
     181        /* Test result */
     182        l.sfeq  r3, r4
     183        l.bnf   _end_ko
     184        l.nop
     185
     186        /**********/
     187        /* Test 6 */
     188        /**********/
     189        l.movhi r1,     hi(0x87654321) /* RA */
     190        l.ori   r1, r1, lo(0x87654321)
     191        l.movhi r2,     hi(0xabcdef01) /* RB */
     192        l.ori   r2, r2, lo(0xabcdef01)
     193        l.movhi r3,     hi(0x33333222) /* RD wait */
     194        l.ori   r3, r3, lo(0x33333222)
     195        l.movhi r6,     hi(0x00000c00) /* SR wait */
     196        l.ori   r6, r6, lo(0x00000c00)
     197       
     198        l.add   r4, r1, r2
     199
     200        /* Test flag */
     201        l.mfspr r7, r0, 17
     202        l.and   r7, r7, r5
     203
     204        l.sfeq  r6, r7
     205        l.bnf   _end_ko
     206        l.nop
     207
     208        /* Test result */
     209        l.sfeq  r3, r4
     210        l.bnf   _end_ko
     211        l.nop
     212
     213        /**********/
     214        /* Test 7 */
     215        /**********/
     216        l.movhi r1,     hi(0x789abcde) /* RA */
     217        l.ori   r1, r1, lo(0x789abcde)
     218        l.movhi r2,     hi(0x08765432) /* RB */
     219        l.ori   r2, r2, lo(0x08765432)
     220        l.movhi r3,     hi(0x81111110) /* RD wait */
     221        l.ori   r3, r3, lo(0x81111110)
     222        l.movhi r6,     hi(0x00000800) /* SR wait */
     223        l.ori   r6, r6, lo(0x00000800)
     224       
     225        l.add   r4, r1, r2
     226
     227        /* Test flag */
     228        l.mfspr r7, r0, 17
     229        l.and   r7, r7, r5
     230
     231        l.sfeq  r6, r7
     232        l.bnf   _end_ko
     233        l.nop
     234
     235        /* Test result */
     236        l.sfeq  r3, r4
     237        l.bnf   _end_ko
     238        l.nop
     239       
     240        /**********/
     241        /* End */
     242        /**********/
     243
    72244        l.j     _end_ok
    73245        l.nop
    74 
Note: See TracChangeset for help on using the changeset viewer.