GAS LISTING /tmp/cc7DuSSC.s 			page 1


   1              		.file	"simple-multiple.cc"
   2              		.file 1 "simple-multiple.cc"
  10              	.Ltext0:
  11              		.align 2
  12              	.globl _ZN5baseA8setDataAEi
  14              	_ZN5baseA8setDataAEi:
  15              	.LFB2:
   1:simple-multiple.cc **** class baseA {
   2:simple-multiple.cc ****     int dataA;
   3:simple-multiple.cc ****   public:
   4:simple-multiple.cc ****     void setDataA(int a);
   5:simple-multiple.cc ****     int getDataA() const;
   6:simple-multiple.cc **** };
   7:simple-multiple.cc **** 
   8:simple-multiple.cc **** class baseB {
   9:simple-multiple.cc ****     int dataB;
  10:simple-multiple.cc ****   public:
  11:simple-multiple.cc ****     void setDataB(int b);
  12:simple-multiple.cc ****     int getDataB() const;
  13:simple-multiple.cc **** };
  14:simple-multiple.cc **** 
  15:simple-multiple.cc **** class subBoth : public baseA, public baseB {
  16:simple-multiple.cc ****   public:
  17:simple-multiple.cc ****     int getSum() const;
  18:simple-multiple.cc **** };
  19:simple-multiple.cc **** 
  20:simple-multiple.cc **** void baseA::setDataA(int a) {
  16              		.loc 1 20 0
  17              	.LBB2:
  18 0000 55       		pushl	%ebp
  19              	.LCFI0:
  20 0001 89E5     		movl	%esp, %ebp
  21              	.LCFI1:
  21:simple-multiple.cc ****     dataA = a;
  22              		.loc 1 21 0
  23 0003 8B5508   		movl	8(%ebp), %edx
  24 0006 8B450C   		movl	12(%ebp), %eax
  25 0009 8902     		movl	%eax, (%edx)
  22:simple-multiple.cc **** }
  26              		.loc 1 22 0
  27 000b C9       		leave
  28 000c C3       		ret
  29              	.LBE2:
  30              	.LFE2:
  31              	.Lfe1:
  33 000d 90       		.align 2
  34              	.globl _ZNK5baseA8getDataAEv
  36              	_ZNK5baseA8getDataAEv:
  37              	.LFB4:
  23:simple-multiple.cc **** int baseA::getDataA() const {
  38              		.loc 1 23 0
  39              	.LBB3:
  40 000e 55       		pushl	%ebp
  41              	.LCFI2:
  42 000f 89E5     		movl	%esp, %ebp
  43              	.LCFI3:
  24:simple-multiple.cc ****     return dataA;
GAS LISTING /tmp/cc7DuSSC.s 			page 2


  44              		.loc 1 24 0
  45 0011 8B4508   		movl	8(%ebp), %eax
  46 0014 8B00     		movl	(%eax), %eax
  47              	.LBE3:
  25:simple-multiple.cc **** }
  48              		.loc 1 25 0
  49 0016 C9       		leave
  50 0017 C3       		ret
  51              	.LFE4:
  52              	.Lfe2:
  54              		.align 2
  55              	.globl _ZN5baseB8setDataBEi
  57              	_ZN5baseB8setDataBEi:
  58              	.LFB6:
  26:simple-multiple.cc **** 
  27:simple-multiple.cc **** void baseB::setDataB(int b) {
  59              		.loc 1 27 0
  60              	.LBB4:
  61 0018 55       		pushl	%ebp
  62              	.LCFI4:
  63 0019 89E5     		movl	%esp, %ebp
  64              	.LCFI5:
  28:simple-multiple.cc ****     dataB = b;
  65              		.loc 1 28 0
  66 001b 8B5508   		movl	8(%ebp), %edx
  67 001e 8B450C   		movl	12(%ebp), %eax
  68 0021 8902     		movl	%eax, (%edx)
  29:simple-multiple.cc **** }
  69              		.loc 1 29 0
  70 0023 C9       		leave
  71 0024 C3       		ret
  72              	.LBE4:
  73              	.LFE6:
  74              	.Lfe3:
  76 0025 90       		.align 2
  77              	.globl _ZNK5baseB8getDataBEv
  79              	_ZNK5baseB8getDataBEv:
  80              	.LFB8:
  30:simple-multiple.cc **** int baseB::getDataB() const {
  81              		.loc 1 30 0
  82              	.LBB5:
  83 0026 55       		pushl	%ebp
  84              	.LCFI6:
  85 0027 89E5     		movl	%esp, %ebp
  86              	.LCFI7:
  31:simple-multiple.cc ****     return dataB;
  87              		.loc 1 31 0
  88 0029 8B4508   		movl	8(%ebp), %eax
  89 002c 8B00     		movl	(%eax), %eax
  90              	.LBE5:
  32:simple-multiple.cc **** }
  91              		.loc 1 32 0
  92 002e C9       		leave
  93 002f C3       		ret
  94              	.LFE8:
  95              	.Lfe4:
  97              		.align 2
GAS LISTING /tmp/cc7DuSSC.s 			page 3


  98              	.globl _ZNK7subBoth6getSumEv
 100              	_ZNK7subBoth6getSumEv:
 101              	.LFB10:
  33:simple-multiple.cc **** 
  34:simple-multiple.cc **** int subBoth::getSum() const {
 102              		.loc 1 34 0
 103              	.LBB6:
 104 0030 55       		pushl	%ebp
 105              	.LCFI8:
 106 0031 89E5     		movl	%esp, %ebp
 107              	.LCFI9:
 108 0033 83EC08   		subl	$8, %esp
 109              	.LCFI10:
  35:simple-multiple.cc ****     int total = 0;
 110              		.loc 1 35 0
 111 0036 C745FC00 		movl	$0, -4(%ebp)
 111      000000
  36:simple-multiple.cc ****     total += getDataA();
 112              		.loc 1 36 0
 113 003d 83EC0C   		subl	$12, %esp
 114 0040 FF7508   		pushl	8(%ebp)
 115              	.LCFI11:
 116 0043 E8FCFFFF 		call	_ZNK5baseA8getDataAEv
 116      FF
 117 0048 83C410   		addl	$16, %esp
 118 004b 89C2     		movl	%eax, %edx
 119 004d 8D45FC   		leal	-4(%ebp), %eax
 120 0050 0110     		addl	%edx, (%eax)
  37:simple-multiple.cc ****     total += getDataB();
 121              		.loc 1 37 0
 122 0052 83EC0C   		subl	$12, %esp
 123 0055 8B4508   		movl	8(%ebp), %eax
 124 0058 83C004   		addl	$4, %eax
 125 005b 50       		pushl	%eax
 126 005c E8FCFFFF 		call	_ZNK5baseB8getDataBEv
 126      FF
 127 0061 83C410   		addl	$16, %esp
 128 0064 89C2     		movl	%eax, %edx
 129 0066 8D45FC   		leal	-4(%ebp), %eax
 130 0069 0110     		addl	%edx, (%eax)
  38:simple-multiple.cc ****     return total;
 131              		.loc 1 38 0
 132 006b 8B45FC   		movl	-4(%ebp), %eax
 133              	.LBE6:
  39:simple-multiple.cc **** }
 134              		.loc 1 39 0
 135 006e C9       		leave
 136 006f C3       		ret
 137              	.LFE10:
 138              	.Lfe5:
 252              	.Letext0:
GAS LISTING /tmp/cc7DuSSC.s 			page 4


DEFINED SYMBOLS
                            *ABS*:00000000 simple-multiple.cc
     /tmp/cc7DuSSC.s:14     .text:00000000 _ZN5baseA8setDataAEi
     /tmp/cc7DuSSC.s:36     .text:0000000e _ZNK5baseA8getDataAEv
     /tmp/cc7DuSSC.s:57     .text:00000018 _ZN5baseB8setDataBEi
     /tmp/cc7DuSSC.s:79     .text:00000026 _ZNK5baseB8getDataBEv
     /tmp/cc7DuSSC.s:100    .text:00000030 _ZNK7subBoth6getSumEv

NO UNDEFINED SYMBOLS
