[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#874312: Acknowledgement (kdelibs4support: FTBFS on hppa - segmentation fault in desktoptojson)



Function is __sync_sub_and_fetch_4 and it is called from ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const:

   0x00018a18 <+0>:	stw rp,-14(sp)
   0x00018a1c <+4>:	ldo 140(sp),sp
   0x00018a20 <+8>:	stw r7,-a4(sp)
   0x00018a24 <+12>:	ldo -fc(sp),r7
   0x00018a28 <+16>:	stw r13,-bc(sp)
   0x00018a2c <+20>:	copy r25,r13
   0x00018a30 <+24>:	copy r26,r25
   0x00018a34 <+28>:	stw r12,-b8(sp)
   0x00018a38 <+32>:	copy r7,r26
   0x00018a3c <+36>:	stw r11,-b4(sp)
   0x00018a40 <+40>:	copy r19,r11
   0x00018a44 <+44>:	stw r10,-b0(sp)
   0x00018a48 <+48>:	copy r24,r10
   0x00018a4c <+52>:	stw r9,-ac(sp)
   0x00018a50 <+56>:	stw r8,-a8(sp)
   0x00018a54 <+60>:	stw r3,-94(sp)
   0x00018a58 <+64>:	stw r19,-20(sp)
   0x00018a5c <+68>:	stw r14,-c0(sp)
   0x00018a60 <+72>:	stw r6,-a0(sp)
   0x00018a64 <+76>:	stw r5,-9c(sp)
   0x00018a68 <+80>:	stw r4,-98(sp)
   0x00018a6c <+84>:	b,l 0x1fd28 <QVector<CustomPropertyDefinition>::QVector(QVector<CustomPropertyDefinition> const&)>,rp
   0x00018a70 <+88>:	copy ret0,r9
   0x00018a74 <+92>:	ldw 0(r7),r12
   0x00018a78 <+96>:	ldw 4(r12),ret0
   0x00018a7c <+100>:	ldw c(r12),r8
   0x00018a80 <+104>:	add,l r12,r8,r3
   0x00018a84 <+108>:	shladd,l ret0,3,r8,r8
   0x00018a88 <+112>:	stw r3,4(r7)
   0x00018a8c <+116>:	add,l r12,r8,r8
   0x00018a90 <+120>:	ldi 1,ret0
   0x00018a94 <+124>:	stw r8,8(r7)
   0x00018a98 <+128>:	copy r11,r19
   0x00018a9c <+132>:	cmpb,= r8,r3,0x18ad0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+184>
   0x00018aa0 <+136>:	stw ret0,c(r7)
   0x00018aa4 <+140>:	ldw 0(r13),r6
   0x00018aa8 <+144>:	copy ret0,r14
   0x00018aac <+148>:	ldw 4(r6),r5
   0x00018ab0 <+152>:	ldw 0(r3),ret0
   0x00018ab4 <+156>:	ldw 4(ret0),r20
   0x00018ab8 <+160>:	cmpb,= r5,r20,0x18cac <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+660>
   0x00018abc <+164>:	copy r19,r4
   0x00018ac0 <+168>:	ldo 8(r3),r3
   0x00018ac4 <+172>:	stw r14,c(r7)
   0x00018ac8 <+176>:	cmpb,<> r8,r3,0x18ab0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+152>
   0x00018acc <+180>:	stw r3,4(r7)
   0x00018ad0 <+184>:	ldw 0(r12),ret0
   0x00018ad4 <+188>:	cmpib,= 0,ret0,0x18f58 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+1344>
   0x00018ad8 <+192>:	copy r19,r4
   0x00018adc <+196>:	cmpib,= -1,ret0,0x18af4 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+220>
   0x00018ae0 <+200>:	ldi 1,r25
   0x00018ae4 <+204>:	b,l 0x22a78 <__sync_sub_and_fetch_4>,rp
   0x00018ae8 <+208>:	copy r12,r26
   0x00018aec <+212>:	cmpib,= 0,ret0,0x18f54 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+1340>
   0x00018af0 <+216>:	copy r4,r19
   0x00018af4 <+220>:	b,l 0x16880 <DESKTOPPARSER()>,rp
   0x00018af8 <+224>:	copy r19,r4
   0x00018afc <+228>:	ldb 8(ret0),ret0
   0x00018b00 <+232>:	cmpib,= 0,ret0,0x18c98 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+640>
   0x00018b04 <+236>:	copy r4,r19
   0x00018b08 <+240>:	copy r19,r4
   0x00018b0c <+244>:	b,l 0x16880 <DESKTOPPARSER()>,rp
   0x00018b10 <+248>:	ldo -110(sp),r3
   0x00018b14 <+252>:	ldw 4(ret0),r21
   0x00018b18 <+256>:	stw r0,-134(sp)
   0x00018b1c <+260>:	ldi 2,ret0
   0x00018b20 <+264>:	ldo -138(sp),r20
   0x00018b24 <+268>:	stw ret0,-138(sp)
   0x00018b28 <+272>:	copy r4,r19
   0x00018b2c <+276>:	copy r7,ret0
   0x00018b30 <+280>:	stw r0,-130(sp)
   0x00018b34 <+284>:	copy r19,r4
   0x00018b38 <+288>:	copy r20,r26
   0x00018b3c <+292>:	stw r0,-12c(sp)
   0x00018b40 <+296>:	b,l 0x12db4,rp
   0x00018b44 <+300>:	stw r21,-128(sp)
   0x00018b48 <+304>:	ldw 0(r7),r5
   0x00018b4c <+308>:	copy r4,r19
   0x00018b50 <+312>:	addil L%0,dp,r1
   0x00018b54 <+316>:	ldw 6b4(r1),r26
   0x00018b58 <+320>:	copy r3,ret0
   0x00018b5c <+324>:	ldi 1d,r25
   0x00018b60 <+328>:	b,l 0x12c64,rp
   0x00018b64 <+332>:	copy r19,r4
   0x00018b68 <+336>:	copy r4,r19
   0x00018b6c <+340>:	copy r3,r25
   0x00018b70 <+344>:	copy r5,r26
   0x00018b74 <+348>:	b,l 0x12b84,rp
   0x00018b78 <+352>:	copy r19,r4
   0x00018b7c <+356>:	ldw 0(r3),r26
   0x00018b80 <+360>:	copy r4,r19
   0x00018b84 <+364>:	ldw 0(r26),ret0
   0x00018b88 <+368>:	cmpib,= 0,ret0,0x18bac <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+404>
   0x00018b8c <+372>:	copy r19,r4
   0x00018b90 <+376>:	cmpiclr,<> -1,ret0,r0
   0x00018b94 <+380>:	b,l,n 0x18bc0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+424>,r0
   0x00018b98 <+384>:	b,l 0x22a78 <__sync_sub_and_fetch_4>,rp
   0x00018b9c <+388>:	ldi 1,r25
   0x00018ba0 <+392>:	cmpib,<> 0,ret0,0x18bc0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+424>
   0x00018ba4 <+396>:	copy r4,r19
   0x00018ba8 <+400>:	copy r19,r4
   0x00018bac <+404>:	ldi 4,r24
   0x00018bb0 <+408>:	ldw 0(r3),r26
   0x00018bb4 <+412>:	b,l 0x13004,rp
   0x00018bb8 <+416>:	ldi 2,r25
   0x00018bbc <+420>:	copy r4,r19
   0x00018bc0 <+424>:	ldw 0(r7),r26
   0x00018bc4 <+428>:	ldb 14(r26),ret0
   0x00018bc8 <+432>:	cmpib,<> 0,ret0,0x18fc4 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+1452>
   0x00018bcc <+436>:	ldi 20,r25
   0x00018bd0 <+440>:	ldw 0(r13),ret0
   0x00018bd4 <+444>:	ldi 0,r23
   0x00018bd8 <+448>:	ldw c(ret0),r25
   0x00018bdc <+452>:	copy r7,r26
   0x00018be0 <+456>:	ldw 4(ret0),r24
   0x00018be4 <+460>:	add,l ret0,r25,r25
   0x00018be8 <+464>:	b,l 0x12bf4,rp
   0x00018bec <+468>:	copy r19,r4
   0x00018bf0 <+472>:	ldw 0(r7),r26
   0x00018bf4 <+476>:	copy r4,r19
   0x00018bf8 <+480>:	ldb 14(r26),ret0
   0x00018bfc <+484>:	cmpib,<> 0,ret0,0x18fac <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+1428>
   0x00018c00 <+488>:	copy r26,r5
   0x00018c04 <+492>:	addil L%0,dp,r1
   0x00018c08 <+496>:	ldo -124(sp),r3
   0x00018c0c <+500>:	ldw 6b8(r1),r26
   0x00018c10 <+504>:	copy r3,ret0
   0x00018c14 <+508>:	ldi 19,r25
   0x00018c18 <+512>:	b,l 0x12c64,rp
   0x00018c1c <+516>:	copy r19,r4
   0x00018c20 <+520>:	copy r4,r19
   0x00018c24 <+524>:	copy r3,r25
   0x00018c28 <+528>:	copy r5,r26
   0x00018c2c <+532>:	b,l 0x12b84,rp
   0x00018c30 <+536>:	copy r19,r4
   0x00018c34 <+540>:	ldw 0(r3),r26
   0x00018c38 <+544>:	copy r4,r19
   0x00018c3c <+548>:	ldw 0(r26),ret0
   0x00018c40 <+552>:	cmpib,= 0,ret0,0x18c64 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+588>
   0x00018c44 <+556>:	copy r19,r4
   0x00018c48 <+560>:	cmpiclr,<> -1,ret0,r0
   0x00018c4c <+564>:	b,l,n 0x18c78 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+608>,r0
   0x00018c50 <+568>:	b,l 0x22a78 <__sync_sub_and_fetch_4>,rp
   0x00018c54 <+572>:	ldi 1,r25
   0x00018c58 <+576>:	cmpib,<> 0,ret0,0x18c78 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+608>
   0x00018c5c <+580>:	copy r4,r19
   0x00018c60 <+584>:	copy r19,r4
   0x00018c64 <+588>:	ldi 4,r24
   0x00018c68 <+592>:	ldw 0(r3),r26
   0x00018c6c <+596>:	b,l 0x13004,rp
   0x00018c70 <+600>:	ldi 2,r25
   0x00018c74 <+604>:	copy r4,r19
   0x00018c78 <+608>:	ldw 0(r7),r26
   0x00018c7c <+612>:	ldb 14(r26),ret0
   0x00018c80 <+616>:	cmpiclr,= 0,ret0,r0
   0x00018c84 <+620>:	b,l,n 0x18f98 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+1408>,r0
   0x00018c88 <+624>:	copy r19,r4
   0x00018c8c <+628>:	b,l 0x13054,rp
   0x00018c90 <+632>:	copy r7,r26
   0x00018c94 <+636>:	copy r4,r19
   0x00018c98 <+640>:	copy r10,r25
   0x00018c9c <+644>:	b,l 0x12a54,rp
   0x00018ca0 <+648>:	copy r9,r26
   0x00018ca4 <+652>:	b,l 0x18cf0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+728>,r0
   0x00018ca8 <+656>:	copy r9,ret0
   0x00018cac <+660>:	ldw c(r6),r25
   0x00018cb0 <+664>:	ldw c(ret0),r26
   0x00018cb4 <+668>:	copy r5,r24
   0x00018cb8 <+672>:	add,l r6,r25,r25
   0x00018cbc <+676>:	b,l 0x13144,rp
   0x00018cc0 <+680>:	add,l ret0,r26,r26
   0x00018cc4 <+684>:	cmpib,<> 0,ret0,0x18ac0 <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+168>
   0x00018cc8 <+688>:	copy r4,r19
   0x00018ccc <+692>:	ldw 4(r3),ret0
   0x00018cd0 <+696>:	ldo -1(ret0),ret0
   0x00018cd4 <+700>:	cmpib,= -1,ret0,0x18cec <ServiceTypeDefinition::parseValue(QByteArray const&, QString const&) const+724>
   0x00018cd8 <+704>:	copy r19,r4
   0x00018cdc <+708>:	b,l 0x22a78 <__sync_sub_and_fetch_4>,rp
   0x00018ce0 <+712>:	ldi 1,r25

This is likely a gcc bug.  If the code falls through from the call at 0x00018cbc, the argument register r26
for the call to __sync_sub_and_fetch_4 is not setup.

Dave
--
John David Anglin	dave.anglin@bell.net


Reply to: