decoder.isa (3468:cf23ad1ceef2) | decoder.isa (3525:613ea72b766c) |
---|---|
1// Copyright (c) 2006 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 712 unchanged lines hidden (view full) --- 721 0x3A: decode CC 722 { 723 0x0: Trap::tcci({{ 724 if(passesCondition(Ccr<3:0>, COND2)) 725 { 726#if FULL_SYSTEM 727 int lTrapNum = I ? (Rs1 + SW_TRAP) : (Rs1 + Rs2); 728 DPRINTF(Sparc, "The trap number is %d\n", lTrapNum); | 1// Copyright (c) 2006 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 712 unchanged lines hidden (view full) --- 721 0x3A: decode CC 722 { 723 0x0: Trap::tcci({{ 724 if(passesCondition(Ccr<3:0>, COND2)) 725 { 726#if FULL_SYSTEM 727 int lTrapNum = I ? (Rs1 + SW_TRAP) : (Rs1 + Rs2); 728 DPRINTF(Sparc, "The trap number is %d\n", lTrapNum); |
729 fault = new TrapInstruction(lTrapNum); | 729 fault = new TrapInstruction(lTrapNum, R1); |
730#else 731 DPRINTF(Sparc, "The syscall number is %d\n", R1); 732 xc->syscall(R1); 733#endif 734 } 735 }}); 736 0x2: Trap::tccx({{ 737 if(passesCondition(Ccr<7:4>, COND2)) 738 { 739#if FULL_SYSTEM 740 int lTrapNum = I ? (Rs1 + SW_TRAP) : (Rs1 + Rs2); 741 DPRINTF(Sparc, "The trap number is %d\n", lTrapNum); | 730#else 731 DPRINTF(Sparc, "The syscall number is %d\n", R1); 732 xc->syscall(R1); 733#endif 734 } 735 }}); 736 0x2: Trap::tccx({{ 737 if(passesCondition(Ccr<7:4>, COND2)) 738 { 739#if FULL_SYSTEM 740 int lTrapNum = I ? (Rs1 + SW_TRAP) : (Rs1 + Rs2); 741 DPRINTF(Sparc, "The trap number is %d\n", lTrapNum); |
742 fault = new TrapInstruction(lTrapNum); | 742 fault = new TrapInstruction(lTrapNum, R1); |
743#else 744 DPRINTF(Sparc, "The syscall number is %d\n", R1); 745 xc->syscall(R1); 746#endif 747 } 748 }}); 749 } 750 0x3B: Nop::flush({{/*Instruction memory flush*/}}); --- 342 unchanged lines hidden --- | 743#else 744 DPRINTF(Sparc, "The syscall number is %d\n", R1); 745 xc->syscall(R1); 746#endif 747 } 748 }}); 749 } 750 0x3B: Nop::flush({{/*Instruction memory flush*/}}); --- 342 unchanged lines hidden --- |