1 Index: gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.S
2 ===================================================================
4 +++ gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.S
6 +/* Copyright (C) 2012 Free Software Foundation, Inc.
8 + This file is part of GDB.
10 + This program is free software; you can redistribute it and/or modify
11 + it under the terms of the GNU General Public License as published by
12 + the Free Software Foundation; either version 3 of the License, or
13 + (at your option) any later version.
15 + This program is distributed in the hope that it will be useful,
16 + but WITHOUT ANY WARRANTY; without even the implied warranty of
17 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 + GNU General Public License for more details.
20 + You should have received a copy of the GNU General Public License
21 + along with this program. If not, see <http://www.gnu.org/licenses/>. */
23 +/* This file has been generated from the file named `xlf-variable.f', which
24 + should be present in this directory. The command used to generate this
27 + xlf -qnoopt -g9 -S xlf-variable.f -o xlf-variable.S
29 + After issuing this command, you must hand-edit this file and remove the
30 + mentions for `_xlfExit', since it is only present in XLF-specific
31 + libraries. You must also make sure to remove the file named `mod1.mod'
32 + which will be created in the compilation directory.
34 + In order to generated this file, the following XLF package was used:
36 + xlf.14.1.0.0.linux.eval.tar.gz
38 + These instructions may be different for different versions of the XLF
41 +.set r0,0; .set SP,1; .set RTOC,2; .set r3,3; .set r4,4
42 +.set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9
43 +.set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14
44 +.set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19
45 +.set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24
46 +.set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29
47 +.set r30,30; .set r31,31
48 +.set fp0,0; .set fp1,1; .set fp2,2; .set fp3,3; .set fp4,4
49 +.set fp5,5; .set fp6,6; .set fp7,7; .set fp8,8; .set fp9,9
50 +.set fp10,10; .set fp11,11; .set fp12,12; .set fp13,13; .set fp14,14
51 +.set fp15,15; .set fp16,16; .set fp17,17; .set fp18,18; .set fp19,19
52 +.set fp20,20; .set fp21,21; .set fp22,22; .set fp23,23; .set fp24,24
53 +.set fp25,25; .set fp26,26; .set fp27,27; .set fp28,28; .set fp29,29
54 +.set fp30,30; .set fp31,31
55 +.set v0,0; .set v1,1; .set v2,2; .set v3,3; .set v4,4
56 +.set v5,5; .set v6,6; .set v7,7; .set v8,8; .set v9,9
57 +.set v10,10; .set v11,11; .set v12,12; .set v13,13; .set v14,14
58 +.set v15,15; .set v16,16; .set v17,17; .set v18,18; .set v19,19
59 +.set v20,20; .set v21,21; .set v22,22; .set v23,23; .set v24,24
60 +.set v25,25; .set v26,26; .set v27,27; .set v28,28; .set v29,29
61 +.set v30,30; .set v31,31
62 +.set q0,0; .set q1,1; .set q2,2; .set q3,3; .set q4,4
63 +.set q5,5; .set q6,6; .set q7,7; .set q8,8; .set q9,9
64 +.set q10,10; .set q11,11; .set q12,12; .set q13,13; .set q14,14
65 +.set q15,15; .set q16,16; .set q17,17; .set q18,18; .set q19,19
66 +.set q20,20; .set q21,21; .set q22,22; .set q23,23; .set q24,24
67 +.set q25,25; .set q26,26; .set q27,27; .set q28,28; .set q29,29
68 +.set q30,30; .set q31,31
69 +.set MQ,0; .set XER,1; .set FROM_RTCU,4; .set FROM_RTCL,5; .set FROM_DEC,6
70 +.set LR,8; .set CTR,9; .set TID,17; .set DSISR,18; .set DAR,19; .set TO_RTCU,20
71 +.set TO_RTCL,21; .set TO_DEC,22; .set SDR_0,24; .set SDR_1,25; .set SRR_0,26
73 +.set BO_dCTR_NZERO_AND_NOT,0; .set BO_dCTR_NZERO_AND_NOT_1,1
74 +.set BO_dCTR_ZERO_AND_NOT,2; .set BO_dCTR_ZERO_AND_NOT_1,3
75 +.set BO_IF_NOT,4; .set BO_IF_NOT_1,5; .set BO_IF_NOT_2,6
76 +.set BO_IF_NOT_3,7; .set BO_dCTR_NZERO_AND,8; .set BO_dCTR_NZERO_AND_1,9
77 +.set BO_dCTR_ZERO_AND,10; .set BO_dCTR_ZERO_AND_1,11; .set BO_IF,12
78 +.set BO_IF_1,13; .set BO_IF_2,14; .set BO_IF_3,15; .set BO_dCTR_NZERO,16
79 +.set BO_dCTR_NZERO_1,17; .set BO_dCTR_ZERO,18; .set BO_dCTR_ZERO_1,19
80 +.set BO_ALWAYS,20; .set BO_ALWAYS_1,21; .set BO_ALWAYS_2,22
81 +.set BO_ALWAYS_3,23; .set BO_dCTR_NZERO_8,24; .set BO_dCTR_NZERO_9,25
82 +.set BO_dCTR_ZERO_8,26; .set BO_dCTR_ZERO_9,27; .set BO_ALWAYS_8,28
83 +.set BO_ALWAYS_9,29; .set BO_ALWAYS_10,30; .set BO_ALWAYS_11,31
84 +.set CR0_LT,0; .set CR0_GT,1; .set CR0_EQ,2; .set CR0_SO,3
85 +.set CR1_FX,4; .set CR1_FEX,5; .set CR1_VX,6; .set CR1_OX,7
86 +.set CR2_LT,8; .set CR2_GT,9; .set CR2_EQ,10; .set CR2_SO,11
87 +.set CR3_LT,12; .set CR3_GT,13; .set CR3_EQ,14; .set CR3_SO,15
88 +.set CR4_LT,16; .set CR4_GT,17; .set CR4_EQ,18; .set CR4_SO,19
89 +.set CR5_LT,20; .set CR5_GT,21; .set CR5_EQ,22; .set CR5_SO,23
90 +.set CR6_LT,24; .set CR6_GT,25; .set CR6_EQ,26; .set CR6_SO,27
91 +.set CR7_LT,28; .set CR7_GT,29; .set CR7_EQ,30; .set CR7_SO,31
92 +.set TO_LT,16; .set TO_GT,8; .set TO_EQ,4; .set TO_LLT,2; .set TO_LGT,1
94 + .file "xlf-variable.f"
95 + .globl __mod1_NMOD_____mod1
96 + .type __mod1_NMOD_____mod1,@function
97 + .size __mod1_NMOD_____mod1,32
99 + .type main,@function
101 + .globl __mod1_NMOD_sub1
102 + .type __mod1_NMOD_sub1,@function
103 + .size __mod1_NMOD_sub1,136
105 + .type _main,@function
111 +__mod1_NMOD_____mod1:
119 + bclr BO_ALWAYS,CR0_LT
127 + addis r30,r0,.const_dr@ha
128 + addi r30,r30,.const_dr@l
129 + addis r3,r0,__N_mod1@ha
130 + addi r3,r3,__N_mod1@l
136 + addis r5,r0,__N__mod1@ha
137 + addi r5,r5,__N__mod1@l
140 + rlwinm r5,r5,0,25,25
156 + bclr BO_ALWAYS,CR0_LT
169 + bl __mod1_NMOD_sub1
181 + bclr BO_ALWAYS,CR0_LT
185 + .section ".rodata","a"
188 + .type .const_dr,@object
193 + .section ".eh_frame","wa"
231 + .section ".data","wa"
235 + .type __N_mod1,@object
241 + .section ".except.1","wa"
248 + .ident "Fri Jun 15 16:35:45 2012 .IBM XL Fortran for Linux, V14.1 (5765-J05, 5725-C75) Version 14.01.0000.0000.Fri Jun 15 16:35:45 2012 .IBM XL Fortran for Linux, V14.1 (5765-J05, 5725-C75) Version 14.01.0000.0000."
250 + .section ".debug_aranges"
256 + .long .LC.debug_info
267 + .long .LC.debug_info273
276 + .section ".debug_pubnames"
282 + .long .LC.debug_info
297 + .long .LC.debug_info273
305 + .section ".debug_info"
311 + .long .LC.debug_abbrev
317 + .long .LC.debug_line
387 + .long .LC.debug_abbrev97
393 + .long .LC.debug_line98
464 + .section ".debug_abbrev"
519 + .section ".debug_line"
570 + .section ".debug_frame"
578 + .long .LC.debug_frame
586 + .long .LC.debug_frame
600 + .long .LC.debug_frame84
609 + .section ".debug_pubtypes"
615 + .long .LC.debug_info
627 + .long .LC.debug_info273
643 + .comm __N__mod1,4,16
644 Index: gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.exp
645 ===================================================================
647 +++ gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.exp
649 +# Copyright 2012 Free Software Foundation, Inc.
651 +# This program is free software; you can redistribute it and/or modify
652 +# it under the terms of the GNU General Public License as published by
653 +# the Free Software Foundation; either version 3 of the License, or
654 +# (at your option) any later version.
656 +# This program is distributed in the hope that it will be useful,
657 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
658 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
659 +# GNU General Public License for more details.
661 +# You should have received a copy of the GNU General Public License
662 +# along with this program. If not, see <http://www.gnu.org/licenses/>.
664 +# This test can only be run on PPC64 machines.
666 +if { ![istarget powerpc64-*] || ![is_ilp32_target] } {
670 +set testfile "xlf-variable"
671 +set srcfile ${testfile}.S
673 +if { [prepare_for_testing $testfile.exp $testfile $srcfile] } {
677 +if { ![runto_main] } {
681 +gdb_test "step" ".*y => z.*" "y => z"
682 +gdb_test "step" ".*y = 3\.0.*" "y = 3.0"
683 +gdb_test "step" ".*nullify \\(y\\).*" "nullify (y)"
684 +gdb_test "print z" "= 3" "z = 3"
685 +gdb_test "ptype z" "= REAL" "z is REAL"
686 Index: gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.f
687 ===================================================================
689 +++ gdb-7.4.50.20120603/gdb/testsuite/gdb.fortran/xlf-variable.f
691 +c Copyright 2012 Free Software Foundation, Inc.
693 +c This program is free software; you can redistribute it and/or modify
694 +c it under the terms of the GNU General Public License as published by
695 +c the Free Software Foundation; either version 3 of the License, or
696 +c (at your option) any later version.
698 +c This program is distributed in the hope that it will be useful,
699 +c but WITHOUT ANY WARRANTY; without even the implied warranty of
700 +c MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
701 +c GNU General Public License for more details.
703 +c You should have received a copy of the GNU General Public License
704 +c along with this program. If not, see <http://www.gnu.org/licenses/>.
706 +c This file is the Fortran source file for xlf-variable.f.
707 +c It was used to generate the assembly output called xlf-variable.S,
708 +c which was generated using IBM's XLF compiler.