diff options
Diffstat (limited to 'sim/testsuite/sim/pru/subreg.s')
-rw-r--r-- | sim/testsuite/sim/pru/subreg.s | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/sim/testsuite/sim/pru/subreg.s b/sim/testsuite/sim/pru/subreg.s new file mode 100644 index 00000000000..77dedd11ecf --- /dev/null +++ b/sim/testsuite/sim/pru/subreg.s @@ -0,0 +1,40 @@ +# Check that subregister addressing works. +# mach: pru + +# Copyright (C) 2016-2019 Free Software Foundation, Inc. +# Contributed by Dimitar Dimitrov <dimitar@dinux.eu> +# +# This file is part of the GNU simulators. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +.include "testutils.inc" + + start + + ldi r0, 0x01ff + add r0, r0.b0, r0.b1 + qbne F, r0.b0, 0x00 + qbne F, r0.b1, 0x01 + qbne F, r0.w2, 0x00 + + ldi r0, 0x01ff + add r0.b0, r0.b0, r0.b1 + adc r0, r0.b1, r0.b3 + qbne F, r0.b0, 0x02 + qbne F, r0.b1, 0x00 + qbne F, r0.w2, 0x00 + + pass +F: fail |