public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-05-02 14:16 Richard Zidlicky
0 siblings, 0 replies; 12+ messages in thread
From: Richard Zidlicky @ 2003-05-02 14:16 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Richard Zidlicky <rz@linux-m68k.org>
To: Jim Wilson <wilson@tuliptree.org>
Cc: Richard Henderson <rth@redhat.com>, gcc-gnats@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Fri, 2 May 2003 16:10:10 +0200
--7JfCtLOvnd9MIVvH
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Hi,
here is my testcase, I used gcc-3.2 with a few additional patches.
For reference I have attached the diff between the 2 used versions
in flow-rz-jw.patch (none of them clean gcc-3.2).
command:
m68k-linux-gcc -S -fexpensive-optimizations -fdelayed-branch -fschedule-insns2 -frerun-cse-after-loop -O2 -g -fomit-frame-pointer -DLINUX -DUSE_IPC -DQVFS -DMOUSE -DUSE_IOSZ -DDO_GRAB -DSERIAL -DNEWSERIAL -DNEWPTY -DFASTLOOP -DSH_MEM -DIPDEV -DXSCREEN -m68060 -DUSE_BUILTIN_EXPECT -DUSE_VM -DZEROMAP -DVTIME -DTRACE -I /usr/openwin/include/ -I /usr/include/X11R6/ -I /usr/include/X11R5/ -I /usr/X11/include/ -I/usr/X11R6/include iexl_general.i
results:
iexl_general.s.rz : results of compilation with my patch on top
of gcc-3.2 (works fine afaics)
iexl_general.s-jw.patch : diff (wanted to save space;) from above
to results as compiled with Jim Wilsons patch
diagnosis:
there appear to be one error and a few inefficiencies in the code
generated by gcc with JW patch.
The error is visible in the last hunk of the differences,
"addq.l #2,%a4" was moved to the wrong place across the
"jbne .L1249" jump and is now evaluated unconditionally instead
of depending on the tst.b result.
The source from which this is visible is in line 3886 of
iexl_general.h, "pc" is a global register variable defined
as "a4"
Richard
--7JfCtLOvnd9MIVvH
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: attachment; filename="flow-rz-jw.patch"
--- gcc-3.2/gcc/flow.c 2003-04-02 22:04:31.000000000 +0200
+++ gcc-3.2-jw/gcc/flow.c 2003-05-01 12:52:04.000000000 +0200
@@ -1772,7 +1772,7 @@
if (global_regs[i])
{
/* ********* HACK *********** */
- SET_REGNO_REG_SET (pbi->reg_live, i);
+ //SET_REGNO_REG_SET (pbi->reg_live, i);
mark_used_reg (pbi, gen_rtx_REG (reg_raw_mode[i], i),
cond, insn);
}
@@ -2632,7 +2632,7 @@
&& ! (regno_first == ARG_POINTER_REGNUM && fixed_regs[regno_first])
#endif
/* ******** HACK ******* */
- // && ! (regno_first < FIRST_PSEUDO_REGISTER && global_regs[regno_first])
+ && ! (regno_first < FIRST_PSEUDO_REGISTER && global_regs[regno_first])
)
{
int some_was_live = 0, some_was_dead = 0;
--7JfCtLOvnd9MIVvH
Content-Type: application/x-bzip2
Content-Disposition: attachment; filename="iexl_general.i.bz2"
Content-Transfer-Encoding: base64
QlpoOTFBWSZTWYzKqRwANaf/gH/190B7f///v////7////9gYr73w1vttLWZtqnc5caHTust
gcynvjndrHu6691adZpvPffefeOGjvtubo7vvaeW9zku127vO09t0avn33F765cTdx18nudt
9X3N88773fe98QrvfPZ533rxrlL7e6ePpp3OHnaYHxA133OOXrthR53uLOmjPtnbWjcui40v
Vu+3i5aXy+et7jdc7NNgW1GDbWOUJ98Z9Uehvs+ee9Xe+3z5733b71PWEu7mvXZX0bW1Pb08
eWaH1pz07szBh77HCPYNrB7ajPr1z25ve3k273t67mM65k9aozM9vbubN1qddve109WaRutL
uucNdnq++rfMIqhfS+69eprcwu4OcrpsJEhACBoJpoCYiaPSKewgJ6mJhT1MJpkGRppiaNGg
BpkE0RBTICYAk9Tym1NqeoNBptEAA0ANAABo0AkylJJqZU/VG0mQmQbJpqeoaZomhoegaGkD
QZANGmmg0MgEnqlJECaKNoTRPE9UZTyaj1MAT1NGmEaM1H6oZABhMTE0yeoIkiCATQyNI0am
0NJqYYqep6Cn6p+pPU9pqaek1PyU/Sn6GpkQzUPKeoBEiIIE0CnlPJMmpPTGp7VT0g9Kep4p
6gA0DRoAADQGQePUgEPP/P0Qul+Qi4VG+AhISCWbh+6h1dV79bJWr8O61ItK1SZsQhldSAyE
LURbWgtCwkbAbtJKdURZhE1YmcOVwApgVQyRUGQBWJCWNAJQ0KCYUukIWtQYWUVgwqgFgQGB
FYXQIMaoRKgqkiiXWIhUsoKPxvsf6wn/2l43A5RLD2gZYlQaoofaaSEQLhHprly+qz9zr014
t6eNg17NYxj2jwVNzsI7aeiahOdhdC7fgWaXdk3oLjeJrbZaVJmOkX5LikdbNtz11vTUPddt
itXisVyK8wnovheN73gp6wTsALjC5M4zbu3KyFZW7ju22xttdSNGtzctzYuSbcqNubdN2a2c
iqCohWlXINfN/w/e+/+r97y/d9f/dsb7vudqHHsudo0gXIW1cTpdIWMZBl02UUik1bnLvh0H
KZN7Jr1W83eXnH8PreldZJVKSmkWImVpKUpbeq8W+DUpjaplMt3cyIRjIEIJYF0hmAbRLy0Y
Y61SuMShliUMRIpiBSzCECBCDMa3ZJMOUMOfHZI84LZDqDNb16u82NXrqriNWit5nLSUXCmL
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
--7JfCtLOvnd9MIVvH
Content-Type: application/x-bzip2
Content-Disposition: attachment; filename="iexl_general.s.rz.bz2"
Content-Transfer-Encoding: base64
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
4zMLu7Gmju7s6u7KTtO7yzvnMw7u7O7uzV3Y00dp2mGUd7zMLREFoiCzRBaIcGSXa3d3SpV3
d3QaoiNm15rM8ZjmeLytYHTOmaZwzhnhnhnbOmd99996nbHup2ztnbO3vup2ztnbO2ds7e3t
7e3srKysrKysrKyu7u7u7uqqqqqa3K0NCtDQrurR1znbrTQ0tNd3dhrvvnJ2zjup2y2dM7Z2
ztnbO2ds7Z2ztnbO3tnbO3t7e3t7e3t7Z2ztnb29s313d3S1Xd9uPb29vb29vb29vb29vb33
33333fB3dqtNlXar24Vl9uGZfeFHdFB3RzalFUqr3fbjyh0naLIWQshZYsrKysrKysrKysrK
ysrK7tA03eW9vbLERTdEO9d3O2ds7Z2zpnHfdztnbO2ds7Z2991O2ds7Z2ztnaHffd9vb253
R2l90dpfdHaWJ2ld0dpfdHaX3R29p26Tt7Tt7Tt7Tt7e07TtO07TtO07TtO07TtO07TtO07T
tO3b209tPbT20qvs1Ps1Ps1Ps1Ps1Ps1Odu1vdzb99AN3NfWwoivSUDldSoRFMtKFFmLRSXK
ahF6DBiIzkofGzwhIsyDQiCE5nR06Sb6YF2RqMuuEIGC8yc2Dvpy6ID1plG2y7dPjl4JKObF
kF86ez71rt3EK4ZpCyH0qJRHgsGAYM8oqYBqaADGeADRo0fGvXNU3xvmvRrcgHLJIWDJ3rfJ
XF99ll8cvh3443V1XV0vn3k1VSChtklMgoRZIaZDXSbdOBUWpTxd3d3d3d3ttwbbbbbbanM2
222222m22222222m2222222a7bbbbbbXZttttttpttttttttptttttttmu22222212bbbbbb
abbbbbbbbJyR3WMAWLAWQUiwJaPL5THIUNb222222a7bbbbbbXZttttttpttttttttpttttt
ttmu22222212bbbbbbabbbbbbbbabbbbbbbZrtttttttdm222222m22222222m2222222a7b
bbbbbXZtttttti7u7u7u7u7uxJSBjCkAUFAFkucnPzePz+dvDz63bz7h5ttttts12222222u
zbbbbbbTbbbbbbbbTbbbbbbbNdttttttrs22222202222222202222222zXbbbbbba7Ntttt
ttNttttttttNtttttts1213cXdxcz6Hcz1gwYMGDBg/3GDD331gwYMGDBgwYMGDBgwYMGDMj
YnMwYAMGIkGDBgwYMGVFZubububuKqKqKqKqKqKqKu5u5u5u4qooYMGDBnvve+9773vrBgwY
MGDBgwYMGDBgwYMGDBgwYe1XXd2iIiIiOtGrCbJGwBjEkyncMQMapVJfBpTXySRGM0MzJWB6
NSRCWDyMnt3focz8c3oNCAtSmSZdv6hFvi7ECGJNmEQ0I0M0MIhoCQkQ5sYuybRrrsmbLrsm
ma67FxrrtE2a65tGa63TabNcYmzXS7JsxqybNLrsm1arsm0a67Jpmuuxca67RNmuu2ujNddM
mzXGJs10uybMasmzS67JtWq7JtGuuyXba67Nbmuu2aDXXaJs11u2mzXZcmzW5sm22mx/F3UW
fRPC+fS/gn1frry/U+vACAB97YBVWggAQALQW22UW22y20BACygCAB9bYAgAQAd2wCxQCqAI
AEACDbNbmybMasmz767e5Nvrdvb3Jve7t7dnGrXXZbs1122lzXXNozXXTJs10uybNfx13qbN
9O3vU2XNdk22t12TS6667Jdtrrs1ua67bS5rrpk2a6tU2a4xNmrGTZst2TZc12TbTW67Jrrr
rsl22uuzW5rrttLmuumTZrq1TZrjE2asZNmy3ZNhtrsm21uuya6667Jpmuuy3ZrrtUxrrpk2
a6tU2a4xNmul2TZkasmzvXb3Jt+N29vcm0a67J997u3XZrc112/Gneu3XTJs11aps10uybNa
2ZNml12TYxdk2jXXZM2XXZNM112LjXXbaXNddMmzXVqmzVPMYwASbtW1ab0DMz0pKhnoIpnb
EaETHSBCTaKSLJwSqihgKIYwFyb8Z9o2yxgDgDeZXxkLWuGfj1EMUgga1t5WbxgiAMFRmhXU
OMYxh98FgSTu7zrRIAVl2EhSEDjetYQlShkgltiuY7zpBzHNSI5ttoTNaRCBqZg0TDghgYwH
RPLmpR2TJrQq7wWSRRNzPyfIql5Ear+cDbb7vmABsgGFhojA5ggAAD5WEV2vKyvK9siauOnP
2ic+XYRMG7ZWUzqJ0vm6dt6zeXVJwKxi9aSZfGMym2FFtRGkO1LUO9s0MynCxqKiJKZTVW73
d21i6SIrc1gAAiIhsoJ8XkplcMRDNGYQFS1bGaG0wt2pmFU/Nqu7yeVUxlqyqkANuaKEeo1D
k2AKJwCLJmop4kyY7MJvubLBFgoMwrmK0aNUa3ECKIwCIAzPb0d1vec1dalykHDTLklS5+tt
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
rpoStlqLu8tZw15apDht3q7j4o/GqxBe0pO64xKtpMoeUtyqy6h8nWm6H9H86q6ooyQlfbj7
YZbUPlpR3XN9sjnV6Wu7DQzEUaKK9tSNNEaagqKKO97uS6q07ee5xcSCfgtZXEJuZbF6SlBC
ERwyaV6VMBEfSMyqafVb9CvIUTMTMTEXVTk0VR7dqqZd7NPXW5riu9a1i3rqutGkgsDhA5Z2
lrlKBTKQGlebJTDvjXedt51xmnXfJvPaUigevr61gHpJPaB0k8+nu6v71mev5yr5q3eQNsxD
KqqqqqALOXm/m5DSpf2oW08PzdLDTTKZQvNStXd8fWzDOOrgYKKIc1rWy1HJO6e5uRbVTMZk
VmVu7MzVxV9SzzzyMZ9ZUoQUFBZQ8c9YZmZmZmXjmZmZmVmVmZmZk5mXmZVVmZeTmZmZmVmV
mZmZk5mXmZmYZmZn2hDTIpFBiQUi8tMX0rjMooMDRqCUI1IVjSWi0WymKUkE0UGKosVVFrUQ
sJqLQlRSUWYpX4XJjDcrqNiRRimLRaaj+CuaMad24UYxEV+/uTd11RUWNBYKxRUBEVMiSKMV
GzEZkRT53c19K9CxjaQJIyTNgwJoMYooKZIYpASSkCLRsVOcUiXmN3ddNIWw+LhzhBwI4A7g
OIBm8T8lV4GIjP69bVvkjW2tFY1Q0KjQqNKo791tdVl2RnHMuNlyh/Iv5q/2/038i+1Z7Xpf
bF9r0vvxr7XpZ7V9r0s9q+16/jPavtda6/Kvyr8q/Kvy+b5l+Vflj8l+VZ8r8F+V8Wvhfli/
K+F+Zr8r4WfKvyvhZ8q/K+PdHyr7XqL7V9q+1favt/O9y+1fbHpfas9r0vtfl7d6X2xfa9L7
Yvtel/PrX2vS/L7ddXqL7V9r35tfavtX2r7T5SvNVzv8YWVVemj1Xm5zVFZ6zJBZPKeU4R4o
pFFiiinNVwmJTy0mIp1VBEUAAAREX5d19/nfq/J8fSIxEfXXREXd3d3d2+L8JSmUi5lefVWi
i54u7qqqhYoptlIopuqnDj0muKp6adVT4qnw09eKvzVPpqz2vS+2L7Xpfbxfa+F+Sr8r4fl8
uur49z2r7Xv52vtX2vz5tfavt+b6y+1fbHpfas9r0vtWe16X5Z/GfK+F7Kvyvhfv41+V8LPl
X6r4i/Kvyvndr8q/Kvyr8q/Knwvyr/Hrel9q/r9N+i/qrb+q/Rf1Yv6r9F9Lfa+F+/jX5Xws
+VfqviL8q/K+Vb8q/K992vtX2p6X2r7+m/Rf1Vnf036L7Vntel9sX2vS+2L7Xwt+F+V8LPlX
5Xwl+VflfEX5V+VPhflX5fd7l9q+3j0vtX79b0vtWe16X2xfa9L7YvtfC++tfa9LPavteovt
X2vUX2r8r33a+1fbPzvcvtXtj0vtX8+t6X2rPa9L7Yvtel9+Nfa9LPavten29uvteovtX2vU
X2r7X5ecnOcmk5xNeCTRJSETSxUAFC3VoFTQfTAVMzyQOEohdbPWuYhdXfv/z+7suXL5+rO/
r6+3Fn1t174OOes/v/b5P7kkqFADTIEA8QmSANKajDAxZMzHBkZcgptp0t1uyndyp3G1Kbpt
0tyxSOp3d3Uoqu66rdtaXSq5bpxlqJlWTW6V0QGwDBVIJFCZCJSgcxAoxVSIMcU+AGEmgmwM
Da0k0yt6lvk0Sauurq10trqpxMlXBhJMGXDFhUCTCIRwBCWUCGBCYRiHMjMxsQErMsbVXcSd
pLd1dtG23QJJCkwlAH4mGA6/2S1rS+6DAXZgPlqktJvG1GY2BmTYaHbKhKplDbasNtZJRCNE
jSqyjogXbZP/OONAyqaQ33wqwwgSINh2BxNO0BSrErLIqZmOZmZQ5y63apXUqukF1ujLqkss
vJZYBecA5AWUtBOO7cnausLN0pXc2c7ndK47ru5A5rl0czo7uO3Nzc27o4HHLKHHHATnJJYi
Tks5ySVmlAaRV/ifskTWtswscycrCFyiyzEqUgThwUx1tWWUCYmELLectSS8kiTktEicQoIQ
REtUpdrLWQqbJZYd1tJdy6Qqk1JRldS7u67osyUHJDFBNxbWjMSCawysCUnEtOXnLLyQLRZb
RznEiUtllt1U07RbXAAdlzbd1TmrrrV2qKuuubcxTNzs11TbOpLuXF2nWrtTXd3IrFiMjCpz
IMcUDFXShhrTlWi0Becl4WgvOOcSSzkSWSORJZCQQcHDnOXksTiJOJZJKLZt0tzUXKULmTKk
XDdJZc1d13d2rTZ2u7t13XEuTtm3VN27GO5267tdrtdctIksSrXC22uCrbbRa5KQxhgsRGYE
pZiZmAYYYuZgJGIEYuGCqMEoppEUkV5AeyO2+FLZbappALWjGyrMzSYZrHt227Su7ddq4Ctz
l1c7lbrukVXbuF23RNzt1O7u6JXS8QtFQ4jiUqLLHLy2ostRZG7mamzMxwmAXYRQNZrVrRmY
2jEcEQ+/8h0SsJAklCjKg/LuxQQNB5cnM0Jxgyg0mEYXTQ9nbmv8qfFMcyqpLau7tLaWqMMF
EUtlJURswTBywMd8cIjqTITMF4wvFIChODKhdhULKUVZRsbLEywKCqFhdVAtvbUmJMSCJARB
nGHrXlVJKaklExtc33VvfX9bUOMmNiRrZRvGilx0WViZlWZOLouqMuaJdFG0JN6w2qG6DdBu
8qqqqsu7tlS3beMqDTKg0igoutQ1vA2NV9W1Jyct4q8S8tq3EmjAInAoHDbZLKOCyy2XIq21
mt2k01lt21utZdFu2mt2XTkS6yWciLYaXi25GZrKsSzJ9d6+d71e87hE5y7uLu5GIoLaiEkr
n1lss0tlTZckm3ks7UuRyx3TWWy5ul7LYWpeJi6WzaXLpbGy6XjF0tmjzzz6vZfEfjTzDK1m
WWZOVAAhxX09vXMvffDL4WH2as8Id1GztV/Y6TX9hd1T3cVZmbGThslid51XWUchzObBkX5Z
u3FLbec6itd31ALnkQoiLiII67h2lg4ezlxFzFxu9vZsM7YKVRq4Et6Icxm1VO6nXUSsp7js
ld0ZFTuxs545re1VVVVb5XOr31vWazLK56CyuOe7cyN4nYLromu3iXPKKtbTqq3EbFNWozMV
32W6sjtUVM9ditTN1GRL6Y64k3AuYlzO4kk1Mqqq1XVQ5yJ5ZdPYmlDe7Tqc6tszu6nCp3A7
cx0di2Bbsys23LnFHbG2mO6Uyli1bFxijonUnMxVeX2Jcsq842XV3oozZ2Z7eWXs7C6Mnape
TSzrnWSM7JfZudpbdu7I4TvprS9nnosrMvsiHim6ZsV2bMkCJK2tmH5F6+t3i7N8ZDry3uSt
qY5jxRRUXxkbMbG5cbuxwq2FMTNlyr26DLzs3ugV2Dm7ew251VuD7JXTzx9dD6GPuTy2tpEq
KebqfhcTe1ry3y2zSaJvs0Q+iDWgWO6WKNp3DnIw2rpdmu92o2MFFUBGWSaovoWLFc5F1Mdk
0MzKeqZKLNV9fmPaUx1XVTOumlqmVzbcNux8RdwWjuCVWyrqAntNXKsruc3fEd29r4WhKs4d
heFDjbuOeqjSM17UZPjnZjI8uI1u+vEZDq7isVyoLYk+icnJo21MQ8rPLvod+E9hPRpLeZzH
XmNG3w8vZ7qMmHJyvZVqnkz15jbjlDrHqkW4Ob2Y7lifI0V3diE6YxpZeY2IlGVj4HDbhrey
lYzii7qbveeIel7u5RvZ1dmpnXap1iZsuuvG20XM5ebeKlTsnsU13cVSMy2za6g7Rvru9Y6K
WvFjUUG1sXHQ1lTNE5uKBXMx4LjWpp9SuSo27lT52ubt5KkjTZUNX5mKotK81dnhjms5PIUV
149WVKwnYqq0GbZe0pI82I7esvEZ4bXaZXZdIjanXPVe7uPeuC4vrVYozKzMprBO29V5x5PW
97OcmRlj8mBrM8i2nEHW6iGy+uNq35ndOlvmVg+pGzEdvJOC/O4Jy8I8ZOvVr6u2YjNi5Jit
mJyJzhXsXmDcx2vaZfisxjUx1qMs7Ox1FKnHc4ifKiKrfOpRkjNnyZzu27TmNtKSIUa+o8ys
mY6c3bu/JjXVzlVbnllVY7qVV6LacPYWRdEZmTN5EzMzMzOEw11zrq4mZ5TMzVxJOVFmRu4r
bDM40i5uocW6l9c6u5TOVsV3TkvJmYqk76+2qyK2NzKnauOVvrh7Om5qzjre7E3dlJRUzTIq
d2c8yY2F5NzUUdATcXec5e9Xi29i71qlVOr25Ft9MReRV7t9POmZVTu10bFdmpTSyislRIsH
TVT1Lew7NnerurBqVyjFMzd6F1ul3GS8raq8jM5ZUx14lWxk2XuLgMzYpRva04V88jul3fi6
cvE8S1PMtLreaW+qI5FZu6riqyHU3DN6oou5S8y7TFl9NdVdXKKjoVOUr229nkra7u5Dm7nF
m4h9tdHdkt+co3E7ipI6+xXcY/CcW5txd3aqNnMjCczeoxcpuYNs1xtVsZd2ZuVfVT2usZZc
bMrZvJctKRrqsmJVxfXojYSdJrNuYpzt5z4nL59t5MTXVDp13z+P8frzxAUU8PMUBTYTd12e
S8M7ccXKyKw5RC2IsC2yWoLbKtFFtS2W2JZUKvJYctKqhF4izqKd1Bh3fPtr3yfO665uudHI
uk7uaN06O7kVzpCXLl3Q7u6RC6Dju525dzdumWHfxyTa9WLwi2WxVt5YtcVVdcSXXdc53dzc
dOS7qTJpe5NeIXixJZVcvKciQrjllpu503cd3boR3u9513EHEEAzXd1dOzuhOu64k5LiIshb
UW0W2gtW55ll5e21yToFzgccJQSTIYmGUGb8naV9fbvIwL526JS5cwlm7rhXd0jfPy1bXz18
kaKO7iLu6ZiRucMRFVEUpKBKqgRUzegJCE5zW2iNndwAiuXO7btzhXOU3DhwUVU5cN3hIUg8
Oe/IcSWYJQhHXLkIIHBeVcsTJMysApSzN9hde987quO4sO6uaI18cxp7tc27uqNG1e+u15a+
NFRqM5OLyb725y2cujnJ1rucsOTZzEkosxjnDbU67us0a1LLLNZk5bQKL1VTFMaosWmqotq6
L30HADIRICEf5/4N8nJVVy02LSVTdWXV3VKqqt31JwkiJJAq9Jqxqquhu7jdjU14tZdqa+fH
fLb5daWCpZbVZz65KxC23lttkvbE/bXVVXl0zNrbpPn1OTn4kl3l8W22y/QzbGraiW1trZjj
Fu12yttttq2qVWJjVZbxYrbW60qVLLasatVnEpUSywXVKltl0RqlzaqWgguhyrFui1rkNWNt
pZfruuLbereMuJdZqul1tlsxGpahqwVl2XaOa8jFuXuQuXPOnmDcXdwep3bd3nqivd73NTvb
vWk0a3munuDqRZyrtyQSbZTTMplvMqW4VCJbZ3d8k5zs8valWRVWVBVSyrV5ZV5ZZZe3UUEt
prNq1W3WqGtJrJrjktixZFUCRb3u8HB7rk+v0u+fOZMbs6LYLaUhFhUlspbRVi220WWxZJbA
lovLeI4Jy8nJ3ff3tu+H1cI7uauWNu5cLurptuaKu5yaK5qdy7ruXZ3c1zs7nc7jukXY6HAk
7uu6yy+eTve2LViKsVLCy1bSVEXsKulpmudcdDru7pHN1zo7pzoxwMXOXdyc7pOCyrD47cPs
/ykX9f4NigG0nVmfvh4/dhk23YiPxPs9eDwDggcB15DkQnE2Md1R08i5bG/nbk6AAnbFOSf4
3Pt/0OKdfEEyDtSAx36uq0HOQ3BE/8+Z+Bx7q+7kfb5YnOKeFX2AAAAAAAB/vf0km/H3dgAA
AKAUAKAUBec59W224t5/af19eAAAAAAAU/0dsEk+vv+9VVVXg98dR4JPBftVV2qrga5KpVLb
b92c55LJ/V2fy9Xv3z8+e/r7+/sAAACgBQCgKJF8tttoAAERERgAAAAAAAAAf7n8Py/HXkPD
6+0Q5/WMY+xHj/28n7FukX9iYWetH+f1/yrOYv/H8/bNR3dBIeP4eIBp/9f39+5mYV6/0B/8
NBt8/IX/q/z/6J/7v9//Bp+1/4/iV/Tkn4BMQQZqU/or+vP+WjgB/VCcRiUimYN3bs/buzTb
RaLRYDkMAiB4A7v8/b4X9j/q38G/l/X/0f4f84rX32/9P8v7t7sXxP/Map/h/2/3+T/H/rf7
/47K/n86Qb8/3OIb/ZEf6vP+JZ6Rx5+IP97z/5/+r9qaJ/Bd/1OEgvz5H39/c+vvTp61Sv8f
v/4V+M/1l/PyP2zX8jdf1/3/za/t83v/aE/p/2Pv9pHgjPn/b8j9Z+pr+P/dr+/9wkp8qsz/
xaHOCNf/F3Zin/FP6L/e+f6Kh/7U/6Tv8H+W/n+vzv95fx/6fumvo+fE+U28r9+ff+yYYP8q
env5/1/j+Ef0/0+xp+f0z4zefj/Me9/jXJ/7v9upuPP1P/d+L+fy/6/keuYg/+Gl/t/3fy7z
+Ov8v1+z3/l3+vf6/559nL/z/X7q27fP8qvftf+R/14+v7fr1f5+F/pPn+X2eT/p3/6f/X8p
/AoLz+73+if6/TtCfhfPo5+3/1/wo/rz7/j+nht/hP66X1+sZXEc5/rp2acz9kJRn/hwpj+o
/Nz+89D9o/gnfv8/W//T++K/H4/EfVfx/fS0b/6T+ONud1/W6oxKD/k6Iv3L/6F/OP3z+n+a
cHm/ym5/b8f7v9v+vY1/qlfzO8n/Xf+f9n9lO2v3p9D+Z/tH+z+n/H/OPt/pXCov5h/Elfjf
6fvhv5H/i+n/jr/Df+nx/Fr9vOV/x/t/0mB/T/DvS18LX3/d7+n4Z/f8b+32+kdfP4f4/x8O
H/tv8VP4X5NoQ/zj4q7/q+U7/yqv8x+b3tvM/h0TBrtAxYbHTH5/P1/BncZb/d9/Y/t/T5/w
/v/3lr9a/l/Bfr86/M/X9//H5LmP9P3Zy37b/sWtfy/D4ivyT+mn6H6/n9P6/y/gPxvJT0/S
fXPn+Kfn+n+X4v8+fr/Or/D5f8f8V/oX9pr+QWAVSk2lEwlFDJQUyAVCqIkVVoElRwhAQ//S
cIGhQAMFIov+gKYoAYAtUlDEorKqQwJMIJiApIISJIAof4E7Cgp/9IIji0iEsJSOKsSqmKuD
CjFOKhiAoZhjIKSCOJJCSSEiDQIiZhgMQGIYSxGNRFZJmsSlGUsaSLJZYAlSlZZFVNpW1WAM
bbZTVSFrQbLLIG1jbFaLQbaMVotsTApiyGwIDZM2YkkNUkkmSyGrTS1WZtImDVVGKMAaGbMp
kYoIiQxEREJogMpKljGTAhIQq0VTZWVqU1G1M20YrGtFaLVYo1palRtqKyarUGSTbZttTa2i
TIlMtalbEpsjFZMiWigq2FLUaC2kBUZVBJBkRghRWqBU1ZmqMyyamRLJUIGUVtRRRJFk0jU1
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
QQD9Xu/6HFDr5qes54Bte+yJuQvRRTYe7l9Taj33u1lRkb791raAN5cfp79fDVQ/yJB5om2S
Wz8Vxxk1VE1nHWeOOd/eTrvwxlqokEBF3QVuqZtktCWk8IUEyY2xqSsVtNjMmgypl+MmEU0I
vTbNE0pyernx7Ofh89bcQo85vbZzuiRDLT/Txvt3WMmedZu2chBUYiIihDnyOoAANAMAvdrz
fc/Eb5Xv5T76ry/Pcxz1qszv+7XOc5HN84XOc5znOc5znOecHOc5znOc5znMADZADACAhjnF
4Oc5znOc55znOc84XOc5znOc5znOb5w+c5znOc5znOa5zic5znOc4Qxouc4uec5xec5znnOc
5y+c5zjc5znOc5zlc5znOPznOc5znJ5zktdPdzEQrvcRFVFVFVGXW2df5r57Xvq+t7u923ec
999fvb73r972O9fvep3ve96/e971u973vX73vet3p973q973rNjGHLAGMEQAI3d373ve973z
vejvev3ve973vd973a9Lve973ve573ve873td6/e973ve913J973vX73ve973vb73ve973ve
913verznO973vW73vet3ver3ve97/z3nKlm7v1mbLxCI8uiCEcnzNDQy6d7vN9e7V4dy3o5R
RmLmwE0iUJGoQkJCEhIpCQ2IxIbGf7Hr97/e/pb+S/dkCgGBSSxt+vcl3dPz/j71tENdxcpQ
hTUsBTjto/d6vN4/HvR7V9XrmVeB267c6KNc1uGXdP3NeWHuTnB+nd3V5vLc7uEoifjt636P
gXt06u7fq3l78+ue/P3lvAAFVTxZ8fHXfR9tfp449Vzz6+P6n4igiisRGSb+Tu0Y1KRJsP1X
burmSSJpKMVIhZQmWZkq/Zc/LrkpMpfdcRE2/ia8k5Q9s4SHhOWHHFAcJNpAxMYE8oST0knT
NpOU9PLy8PTyw67qSb2IlslMl/mTHH2kCfLADsw4Ozs9Hg7PR9zeeL+d78HQMDALAwMAhvYL
foQsnZBvGRBqI6uRyIZb5n8+uREIzNpXUJV+XvzhW3lRzaR+gx7gTS55kU1IvnxAfCTpAPXI
CVqHjAaTXYyYzec06NuI99qiPPhFkgc6BKW9z+J35lvaFAFUnXFKXTBE7ZV339O7ANuvvxAD
SdS96rt0RQCLIBGMXy/O9bvzuta6Xm+Ot644q7rrjisZxx76wk5+fvM1qUCskEgLb55nV9J0
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
+1y66W5qC2baVdmE1upG9w7VNUHCzG7TzYyK7KVi7prgZssjZvTO042VVw7UuM2Z7UcPomfP
PIjpiKnzyH42YSi2Ph9k3dOrlvtWq1SKM5f1bvsbwSuv1+wXlCzumXpurM7ZnWQUVDu9MUok
y6uzQv7+fpeSe4u7y7u7u+rmZmZmbsVVVVVe/7P7Jzm7znephpmZidvNVVVVVVPPAT0Dmlga
wxP+/7vNwU4pe1u20j0mZlBMgcMuVihKkkg/VevKsGe11JONm56PXcvcTFzBgwYMGDOt7rWv
NjtC4qN3d2ui6WN1U9M4QiuR/Z0Z1L2eI9QtSV+9J1mujZ4TcJLzdvW+G3iQ2wYMMy7B9K5H
X1uEyUljtvq3azAhJpJBwFBqvc7sS5q8tKc63EtXOZy2q0IfNvEuacgwYP+9Hn7Pfk+nfPnx
jbbfwO7pmZcfyBSAMY/TGLMrNf0LN2/5djILEOupfU/nKqqrd3d2CxangM6IA5ngcaCQO54H
xpZ2Efxxj70UiFRqgEIhkEYQBmFR/phTFCAQWhIpagEUaVWgAqUSRaYCFQCJYBNiJmWlqGkp
KTl021TbSrWsGpMmk2a2VqWLVTW1UoibNsWtGSd12UpTVDJFy7ZisTbSbSapmZMZZXNt2WpZ
EkymkykkpyumbJibJJNMNFy5NkmTNJslzdJmUkkqSZNBMmTZGlGqs1Laky2WKUJEmyUzJ8dG
ESRMTITEC91uk1tQREyaTSy2sbbSUmXd0qapQlImTUqkjd26ImJtlKWSXddKa0slkpMsRObp
kpKYmSSkyta0bu6ZJMq1MySl3bpNVZTMklk2a7tt0kSW0tVVFrVrJk0nOmmxJKSzZqbAkiso
tKqUIUzqMIjWOFZtmkkpNNtMs5rpJks1WymUmTSSqsoWjObomkxTaspJd102arFmyaSklWxW
UmTlulNqtJrluyWSkzRmkslRMgi0isxJEZBhBKkymxNkpKTTJUWnNeemTJstJNL3bdMxiSaT
JglRkiSMwcIJaJIEWRKjWttaIo2oAlhiaEmkbFJW2ZJNky911bZTNJSeboymZMmktSxtAl3W
6WTJQtakiUmk5bdNqaqkzak2tWk21JrRmc1umyWybYBNpKsu6q3TZZTKyVk1SWiWrNSWk3K6
aZhMixCRLKLmLhIRAxDDLrDLSbyrpbSia0mtJWSpBLm3SslSWJlJUnK6ZbC1sWsaa0ZYakS2
W2pKNY23KtdMmpNJlGAJQKFCMxwhIkiEQh01tGqSkqSuXStlmtjaTZLJUlZFWa2LS7rppKTU
220i2UslLu3S2WmTSWTTW0pu66bImtkslVjJkpObdNlmmbJpNJbNIk5q6WSyaWZmld23TIiU
mpK2SU5dNJoKkpMnNXSqslJZNJskUlmrDCmkly7ayZJKTS7rpKUmTJzdLKSVJWSpNky7t0sm
TSIiu7ppLuuyklk0pJSUkuXJkykg5dkyyXLslKSSkmTazbU1qNs13XWWRLJ3XZMkpqSU51JE
kyaRXLrKKS7usWIiZJcuySmRJSTIpLuuiSkiBsuXSJKRKNtrNLZqW2ASc3USkU5dNtSiJtLl
0iIJIuXZElKS5XWSSly6U3Kuqly5E0ki5dpJYmSVy7LE0uV2SUS7rrVACzKWqXLkkUlksliI
iZNJSyTSiJJIimyLJYiiJNRoIkooq9WbW7ItEkyyRUWpJKks1tSimWnuq7LUVFKyaSpJUlJa
LWVaKmtrNZamyyqRFSVG0slktSNGzSVlYTLEoCEMIEVGa0uqliQUpJs0RSSasm0mtFbJBpUo
CJQQYQJClQQiQUZJRCLUOEpEoRCRIVpKVJsu7dL5tv2rNDUlpCpRNmGyGzZECAQAERMiI0P6
PV/N1ZsB/v/AHd6HpfbiKMda0e8YUNCEuqgzMgNf+6vl1qMR+CMhgyO/t4mMYwNA/u6DyYyh
6jAIDH5jvNNVc4aqb85dczCpjAcqYlbOZzUw7vmpqqqqqqqqqqjAosYd7orzWzAo3Hm7/NgA
DQ1ubnW7d/FSG2DBhHsYthUszOXkRHip3ERHnkeRj9qpfADNEYCgRCquMByxiYMLgFiG/RTZ
YymbT3te51Qr7tz4GLMsXPqyrO7Z6sNaTSKQkNiFqGxk7aprBiQkIQ5SFHZ8B80fQ8F/nunf
gHWdmI6IoKelSJ0nt37LnwyUmn4EkxXtJNHHedfXXz06rdX/evXXX3LGLyalicmMSQwMDW3T
beRNRDKirHjMcw/wDGIAAo8Y0m6XwqO0H4Gx4IGhYgUNjYv7+XHiXU6zBNrXlXhhsLvIOyKj
zzreebeFJpbOn4RC99m4T0wkePiuuPPk35OXVEnbH9Q8+vjSADdvTc36Z1zsAcRWgDnXbZJI
xK/748GTbJ2MhvjjCFX73ga8ViHwMOOKJyPDiGQh2UBAjRunpGX2po5gnowFIWWCABDAHO2i
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
skFw9U4/sCj0AQNE2m82dabO027rdVPisQfSbwAMYZBlLIGNwgXOc3Oc7m/Th+sfyGlSO1M7
Rj1ZOWruDL7BYuMxBUfp5mK1fXH16O52ncGE+S6Iqkqv8WASxDO8zcuseqMf3TXVa7t3czXk
RqnFitwlqXdmtruSnaWJNwnOJbu1mb0Z9Sjrtd25uZvZPk6luYnCvFmpxHUnXVfP9GKEkzwq
HlJSJexYhD5z3stzU357MZz6ixMcJ607tuzyzJylU6Xow+4z+zDGH/ExnWrz5uIjOABgVzf7
ddmZn3vetazbS4eVmcyysyaaa1M9bJjkBFMEWAEfqqG88em+vBTfEvtfZxetOaRPsEQeJdj/
Una51BsVn9jvWrv6zY+/o7pUHvcEimyfSypqqs4U52ksxVnltOJ3MvbbX43zbbrpqcrbvuez
O7+V+ny+6p1121WRe4l7lP2r7H25ObUdV3U5dasvM3VtztK1icbuXqWu6St5jdZmZsXBO7Mr
sndNPfU99tMgvdnUdnOteh5EzqTchNOywhFqDbfNRA6AHgDSKW23Oj2D2GvKxOts4uHVUr+X
44E1HmJIAKiSuMYA2QRCcrLsHzz6kTLPl+OhqHAaRGKJnn8luIfJmfuoqdZ+Dv16PfNfxiqz
KzE688Spbqj99jVWatydimod621W5rWW/KrVt5eUo3W/NqbTzFN7uZcqZqt3avMpzexUKPus
TU5c5OTXJ5N1ifb2rVSjdpPzqWvs7b3bjLrXDrMb7ezUq/MfgV/OW/j78jl9iYX3xrJhuZW3
RSV/FPOlnuMEuI6Qz++NRHIRbzobN5l+O7lqyHgAxjSndz8kPtZv1BsBB4WabN2B5pBDtH4f
Ad3kt0duZn81mq1vNwVmX0nSyfSThBfaR0NFMBTdwoRnZzVmJUMMHB3qWVmXFTihZiSu5vKh
TO3X8MmbS368hJum6jMx/aHCly715uV55ObmRWZdXmfN1baW7k19p75ie3l5eepF1rePc3X+
r+/ZblxP5KPO1We9U1ZZIp8Qbm2er9RZ8dJIpdh65YwSPenid6mjjKPbrExp27ARND8V5gDG
LLAERCafeYxh1ieA+vUqjxXDuUZ4EG/CofDDWp3CFLmZrcRd++2ftD4voc27HeO8OcLBLAZF
ZiVFBoq3u0tu0szFE1u3t5mLy52939rcTTqKSWbOVTcXaWrc3ZzKU1m3tZl1u1Oall7u1O7W
scQJOYOTmWkMar5MM5G7nwQOTv2fM0/e5znPsyRPJjw2831JrmtsMkwct30AOQVgmW15moi6
d3jP6fnzzEO7u2ta1q9WzBnhXzCs3EiHR3l88H43jGMYA1sxJYvS3lyfBq2tMApz2fiWX2C6
k8LPw9k6zC7fZVRoILBsRx+BO5OoMz+15rOtZ9L76A9Huk+3CRIlXVGZIZUT4JRXiFBqsGzS
QJKSrNy83JtzW7uXlZOOMf40m87rzt3evNu83dq8vKVzWas1LVdqGrSVXeLzcp46xv6WYZ3Q
1mQtmzw8QitE2N9nyjoF5k78jmc91EmSKeodPEeDq4Cjbh/dWw6MP3fgqLkk0VuqbMFfhUvk
zXjtsw5RseDCbUNf6O6vXV2gOuYFqypExuXifK+CbuJNzt6QzN4iKv30orpn86Ow37/p/te+
+31Zjyzu8tNOsx7dc+rG/z15ugtoLXKXeY4qYyG5xPXWY8ukr1Kbu6XJ+VibnLzJX26mZi9f
PLWzmxtqa1WqzMiIy04NnZDR+isjuWjy033sZu+zJr6sad0llW6XhNHIOdL7jD3EDYypMFCU
N5YtvUhylJ0wU5Qjl233pncuy7vc055lMbSWmzRnF7t5EzmP9L3nyvkj31vg0DjBnHOZOOMj
gtxd7HdfVc5hn6bz0r26qT2yr9Cqc1fXOrIsgouKcy9w1Z1c42YVUr/Is1L305+jBgwYMBsT
lj7DJyJJXBdbAVE9l9fT+OqLKfsP2NUFznV7tW3mTTWyHQrzZcaZl9aSDEsSHzBgw3dzA5rl
Z+jT3TA3a9j2CqerLdoOXRu6w7uIDbu+7cpZXNdhH3VlHocYliXr5gwYf3f3R5g/0/r573+S
cw+6wISdvfXXKYSSIwC0lbr774uYwHJzMWjoMYwAZYwIJziGib5+n6IiJnOc5znN+eetDJ+z
If0TpDBk67qQtDjx44wwSHDIWhpA23lHjfuxSBiQ2JXProM44aJAt3TRA6Ttkh+8AkPtC9d+
J+O+vBXrRfO+b15zrdb4zjX698yfWe556DubP67hTIphTkRfs1cXnvh1545idlQEMEEniTjF
RBECIYBERFggCKdfh21ep9d0D/aGsbHyZZC09TmczEREVVVVU4qqSqqqqqZu8SSxgawIjWrx
qZ+8dz+Pr3vuuVznOc43Oc5znOc5fOc5xec5znOcniY2R84zc5xOc5znPOc5zmuc4fOc5znO
c5znN84XOc5znOc5znOecHOc5znOcwMYAP9fEwO9Tve96O973vO85znOc55wuc5znOc5znOc
3zh85znOc5znOZqXupaqtApO7I9xMVUVUVWahl3Ot23vey8afWtc23ne963e973r973vW73v
V73vet3ve96/e971u973vX73vet3vUAYsYxgBywCN0d373vY73ve97He973vez3ve973ve9T
ve973ve9Xve773ve97He973ve9pe973ve97fe673vY72B3ve9nve973vfK73vW73ve9fve96
3e96ve9NMDHCqqlqN8YkmchKOWKDGrmAE2lLvMmk3w0ujMtd3b93taZfIdrqyrGRe5L1LtQk
LSUJCEpEiJQ0ahCQnp6d4qIa7/HvCooGSB4DljFGqAByxhUPSgE0KsWI6ThkLWCHFMlG09ee
qKE2FKSwDBABmDN3pCOjPaVdtd1BRJmj7cB0KM0vWZ5ZmZRPiJVTDU7vHgcYGBbFXQBgYwMA
6bBCh+BoSMjIsdj5rnT88PD+EeNEMYPhiSvmveSvqvjx1x49b+PXiEpOvHdXO06ZOEUUUURE
RPtdciIiIiIiijVdUU4yCk0hw+/i7+ODzY3x78Pj159QgVQMFo8fBgpbmYH2IY7k++YGL2jI
oATw09zCjHpOWHoSWDIdIIVVuWQYJ7zTznNLMqiPVOdQhnNVTy/4SUW6wmCU8YuRLyv0/NIL
0W54ad63Xmet+/RqS4H3WRJvr3WzNMk9IVGcVULBBTwYyu2yl5u2NYrGHg5rNhYIAVnCpiiD
wss0UVBmzCVm3d/w7vVpoxks5zm5vgzX7Xd3d3VZqqqqqv9mBjGAn78DFfUUymcaI1BligBo
iN/WXXfXYXXRhL3ppu8OnHVdqtqZzKpc13Ur18UX2mY58UPKisurbqw7DHVXO4OYOt5RfTU5
HeRdzDRyyt8uHWULd2ju6eUq+u+y96SS2QlVQ82orrhzaeZvdmXkVaV1mVOvCYmaW3Uyt61v
JbtDe1Z1O3FybwUnTS6yRMhm8wpUROzfkYnmBWCGNDAx/cMYHwEJFYkpESUIoSqEIJAllKEJ
gaAgCUlSFmZqQk8iT4ATlIMQ8bSXVJklS0tytzXy6dZ26pM7XRRrBljAIixjCgImPOE+ujzp
BfDaLSXsIc9VzM2d3oX0Y9AxrzGEGMjwIMYICtea0vjbPPky7/Z3SP1777XoADCQAA4gAA4k
IAqqAAgAA/p7777HvvvvvoHEgAAwoAAQFgAaAYAAAABYAC6u74HEs68mtya57dK722/6fF0N
L3b6W8mPXVTz/n9auq8x9sAPfi4PBAeHOtZ5X675UzNefP2qWDM15jM5zm2l3iWmZ+M38IBo
c+j60xYwBhXRyVV4ygC9ZidF7P7IIBDMJ9uqRQGV6yMMezhs6NVMz+s51d5yOwO66Bnpj30M
CLqPd+LUKzopzKmjvUJmLLbyJvUpu7rm3M/je7r7MeimEEKJve552Y1OU7mK3c3MzIzHa6fK
jE7dZmVjjnEbGprHb1VsLxZnZXKfK19e9e7mXj1+Yk6MsT31c8pJBeZOoj3nvu0VkjkNFOm1
WCfy5Vh5C0qadx6pYFLlnm8/UH5vQjbrNRp28PHgGMYk114Ps4G8zMhG8Udfydl5Zyf1XQ0v
oBVt3Vkk6dkClaupmfairq/XLp/NdHddBTKkiO/0MK9RkZFRDuYrU7dWtmMrVGTV6r1bm3eQ
3H3jbq7b83Ljc1tNVrisfd51a+t1fbMZSdaksvO2N224ttu8zIx5PnPybTtVb2crnChGdHVF
774uom2899991JxPmjVqiUbai8wzkPKWGpvRiMZTc5jVpo8aD6ys1DNQZEmdD6LY+1INEImk
VdLeT8nqeR8u7M1ATqUoye3kkDubpNsWqOGMz9is3esjvzXOjXVBYN4Z0VXyGVMRgq1bN3kV
m3Pl7u1W5L2/4ONmKtu1eYn5uXEfnqmZi21t5l5f6UVq2btVnXCj7nU0nebmUodatm7UPzcr
3vOrHyx3vKazX2N6reb73vr8k5BeWcvz3vu9zPjIFNQxbKatpnaOheHp3HoxgZ4l1G5rzx/A
uPArys14y+HfgpcYAYhBM5hUz1rnHU0s+kubeY8w7gOPGI61VmFMzabYzO2irrnaHaQvdejs
xCz1nJ3gKsOpCDWIhUXHk3WZ+yzrU5ixTnd5z1NzVqMqsmMULcVJXd5mrUq26ybzJu0r3nE2
3e3a2XG3u65Zyd3Cq4cjZ4c4Zjkud3GqfXjz3vcwxt6vC2U5oiylBWbmWU9L0ICw5YizYrfe
Ya83EROfr6zLUTu+YzE5zlbZkeISI4/Ph4wHHRGsYCFjGMYsjEm9Fh36nqHHjlHifXwBUg3f
u5dHsNCnajRnCmZ9i5zrObvlKSr9HWOjRdfq3bSiLDGbPExiburu7v9kvK3qbx3S8nMyrtRU
5vnYltVaymnFWm8e5t3e4nOpVt0tUzerVWZlTgJVOHgEcKDiIbhLMo7yHVVXvuePUAvLN+xW
+e+yzPPGhDJo35UX7NEwnlsmzUdAxjRozPeV1aEPFedTTqtMglsjWBhixjAxLmHezu80fKzM
Tp9+2fHzd6YzbNrPwZuduLKqvvfQ+e/oZmfPedGiUo86RMod0dVRg4pHhyNIwpqmNt7BO2Dh
IfiKvWe8i0m8HVLLAGpqStMFKS5zKywhlZnl5R5wMYGDmZh3wMDANgh7dnmoUYxJzW986gGt
XrNb41N6JJxxfGtQhqQEy9XpA5Ey4wEd1dTUOgIIrPjAc0dmGLoveTy6115533UeHNSSGw1D
TbWFOJ40eUvBjAYhgTJZh61N3J6F7mH2wmsqzsaQuhvCkFMyOnfRac6Pb+IsaPecyDNFWLlI
g4yISVQQSuebNSJauKq/IzRF5zzgjxkEdCkTE5uz4YMyNL+yJBwR88XRl7DiaSUK73Zys3VG
XCVpbG7Ubcb+U8mBXztdG7Gbr83N2txblXu3al0sab3JqzXHTa532dyyZxd0Ve1tp75uxtJz
eJ25E4yZadHBak43E8851T9ncBWe3a0UgoZNuhXmGHcMQAxlLWM5RazkuPpaKo2zyrI9pobA
sldxFz6zkOagIH1RJCIeWtfPvFsVIZm/Lu7z0XJF333paJ/mEmGw7qrKSuREas4dUVlU0U4U
YoSWLY5Zn79FTVqK3uaxRVw6uL8hJblVS8maWasX42Lt+U8Wvcm92Y1Rkz9rWte6AaSsrji6
XMgTVZvjQBqay4Z1vjlL43UwsyO++L5L648+899SZaNpjTVFUimm1WG8huMm26MBbGVUBH8j
LTeYiZ8+32zLu7vmM5rOc23WOZhNR1rBGbuDvg/ftxppJQMyKI9I0CTXuviLTl9n5stZETOk
VUZpZHnGMFgXCwg05y5mbdqrvObHT+3AB0Zf7c9wrYd3pqJgzQJQ2nDzEw7ROqNSfTDUdyzu
26yO7PryEuzuIU5O/lNkS+3Xu/pTX37DXk4+vs1RFxdL7cqPYlNK8erqzd3N73m61bpmtBl6
zWtZAINaBPV2M7q+oPV69X3J5Bd0dv7r3Wtw0GsxryHIp8m82EDeRLLk2HBjDkNOqPF61lN7
S40m7iEaCx6QEd4K8FFkhgDEJAMmZO5PTx4qe8or5dWsJT3CKaElmZt3ObzftieEnedGohA/
QvCDxDqsMaftMdM1bdpa7pXC3uiFsPU9yc81eXkpLFG2vJqcSy5XiiKzdvffzmYtSju8b6l1
3ket+TWJ291xcxSqIW+OJ1ZazJvYmliWfqKX4/EJvxo553sHKMa6ZEgmfS1bxPSnxvV2vcA3
PAnagheVQXu9wZsRyuplng3p3iER2WITK01OUcSd0Ny+bxZDbW7Li1kIzGPKzuEvpJ3u5mIm
Zmbu7u1qmZl673Mqcy73dxNVTVVMwfcdCOoWRnAb329E7mLvPYm8zMF6XXqmJHJoIFu3NUnN
SiemqsvnsPC++tO67Xr9fvc/RgwYMGFdjqFMaugZO9lPJuwBM4Y0nd3RMUh7R3lzIxdhURgq
PLzyrXdFxqWdNTfbm8w7W9bOGDBm5GWAuXK3bOmt6EsXW+r7rTNz3vTG3r94ajWkwBhJt13c
8oWpwbwzMo3Gu7tb1s4hhDBh/KPB6c/d9SSX4Xz4AMAcefyYBXHf1Di9HeQksYHUvMwABuiQ
pMCCwYU8krM7xdfj8IiJec5znOW/CPI/QsDEglLAFMkxhN9a9PH8/XHP5qTsSAeuVosQPCAU
w25qvHr4q+Yz2m2TpFKQhQwKSl9EnPdTOTmppz0NGMJ4Q6QOon7Qh+JHsBzKOkZnnu8QICg4
eEfPmBrAUFgDwSDkoU+cys0qyGIdY8AODwDIgNb+zban34qr9aMaj6kWJcvUPcPrMxJRERoV
NVVVVVVVVVVW7CtEoaWGSY0XLLnMXmWiGiKmoqoqoo/cAYw8gLLJqr/FMWAREVVmmYDGiBHm
9GwCggplDKB1zuztSrz56Yt1dtet7y12hYh66XbmnCN3u45ckJCG2NjaRzZ/U/qxh8F8HLvl
3p6d6WV1HxSlzAizQNcKBUQ/e9Xd18W3n6814Sol7ZdRVx52Kmod2lmljc4K6NRjDb1K4AGB
tt2nOeKPBAoeixscHAWietVeqTtljuFrp348Px3NM3OKqEOHLxsYMGJPCTTCcLAG1twnuBgc
PhEFM4tt+98ozVVzOstWVsFr8Sevj38cbnj+tG08fHVzyAkMOkH3u5t21R3ZoOJLwsL2cYwB
t0wN4dDpDs3S8nRJMnN0uXNsuESDDTkks8DMjGCKsDjhBhm0mKk7LAyB6DyyJx6o6Oe++JKS
cM7YKTSTSdaOXd3Rj5+bMOcknyp8itXzI3qiPfe7173p/Nttt/PfQAAf9fDgm/NdY+KWXt3O
Tke6TW108VdJrZipnY3IKUwTLztjN6jdupZnRTxziMJqplXWW9qkN2KrcPJxqC8HV6dOdF52
9k8nhlzGTHXcm7XUh61GnSq2du1EFJ1rCO7NQTfVtVzrmZKysW3VR05c7NZ1nBqqNOuKa1l9
c80t7rOefqSvvCBGA9qGS7WCtEJIuhVWHAtYNg7c1e1quuyhiq6u11SViPGDwCGCac1UJpGB
QHDwQgZTWWla0MYsD9CxHneuI9sz2/i9fz6QFAADCQAA4g7KLAGEgABxAAH8vffffY99999A
OJAABhQAAgLAA0AwAMADe3u7+eBBXYnpw1GVZ7tcUcu7o/nyxdGTSO35/KM0vmHjBY19hjGM
P5q3rlRO5iJ1z593RQSrWc5zWc2zOcO6Z9Z6lCPgyFowZMQwCJ0MD0hjEFjDkMAA7Gv2j2h+
ErwxoJLo3AeYaPxChZd1MFfTfZmd/UarOcj33novxicsdBKTmrIniKwcETRb1bc7sKLrNtXW
fsqmZq3jetSora81OJ3FWq7z9QnmJvJm728vLud2FN3GUleRl/m52IDwsI0MiVBkDR4R1eHP
wu+HQLyjZ98nvOyCP3nihxWSvNqRO3nVWcbhw0dGIxggMDCnU+PBZGszuT1NWsT5EEI2cGAB
8gfSAEQGGIYGM3aAACVBUV+yfCVHPbclkuZycTMMpnBTKFNGZvx6u77BFz55zJKT+fQZ1dlU
giohEqqwVWzcUbt0qy8WLM3JzdUTu0tW7lVf8NcObUvbV1sKZq8rbpxH24eZDbzKmKzNhTGb
StJEVyN1Z15g39LepTPPHrnfYVtrRB90qkV7e2fxIIJpebBBSBAsYiYyuAABGZeLUrLeRudN
PXPPrf1Vn7eO/g+C596kh6upIsID3RDfoNHRjr+orr71PFosyDXpyi/SK6jTmsmZt8vNZ1m6
Kz6ir9Jzo3EMOqbsjIf02HBoSq7spJC9DyCTlpxmbC89ttW6mKzG3VRqbt3WNvyszU8zKq8b
c1KTpu7vMFEdS2msd7cx4d4ZrwnVN3swZIpPHSqR7XCgF5Zv72PNZ9lSRJG58JvKu7f07CTx
2XZqK9wAxDZAYC+HExXnieZZz3ukzCtHgNiTQx4DMZIAGWBgFbJgAiqU5ceqngpis/IbeWmv
CtjSyZGeVVjM15mZu+zZdNPeejTm3cKxMqIjK2FZDZDZgaKyMF2ie0JPM7sXK6UWqSe428e5
dNx0Y3rx9dpLpxtvWsl5W7ty4qcxpp4rX6jbrVFpLcI194Xm60rNPeduUgz0S1ptpebhRJ+T
7tPRgwWBZTAnzbYAlIm6ead4zr59rhWJmvMZzWc5y79qpl5489gSill+jeyAGGIDAczGBk9a
a3GBd6Nuv6l6IjX6pk3teNl5hyhGhmQvJmJBak1gzN+1dXrMkXfrnoypv76GckdlXrgiNFNk
M0ZsKxbt3drYUfdqWnnRkxXRNXWbd/aillaszKvDmnmWk1mZrjNzNzFFS9mHGZe3qeYtdp3Z
S41Xzfpb6x6Bc2az7r2r1B8fdnQOPIRKTK2jeJJFp1DD0YGjjKhrrUbs9jW406TRvt+rCXvG
MYwPAQ0QwEIMdPbYMho+RuCpN3ZySOVPoOh0ftm7kx3LAW7EVNx8zdx0Fwvc6xzuyET+37Q4
TW4t2c+4cVctLOiqzFF7u3t1s7+oSW7U1OY2SniWZOapnyLStYqrdxKNcPXj08jyI8UxkxCh
9OJa8683Jyd2G5Wtp7k4iwIBtBw6vD9xCVnvveby/InM++okBCLVNDaergI/YRFLun6FGAMA
nPBiSGESAuJ1ck+n1TZfajaTnTXMq3RkUFKtj9KXmBgnevDTi9TJIR8IHypBEzDhwSA/hDNZ
Y1czOvbzXmsyVA+/OdGu8BA0V0pD8EQCSDZ4ZCNFcErm6O6IiPgl5dZ8ASZwZZNlZqt3X20N
N1wVVc6CKyc5r13bOcknbbas71mi9nDA88jAA1Q2Rk7O/fayC8ybtznM99kKZ9qELx6qoR64
S9+qrXu/PGzcA+YdicvG/nzok/LJCHXZ2lkC3ws8d01ypXjNBG5GnMDGB4CMsFTIYmITQIyL
sG4MEqNKmarkj38S3Co6LO7dDM2rzM1fBI5850WXcYM0M94GEIJziBxhWYzJBgjIiu48qrqV
Ffvvnnm1eRW3M1u3ubeXd5sbN3u7mbhMvO+C95q6CrLvCsbr5u+dSFMq95e8+dMdd3DbVtd7
XJnRzXpps/I0KM9Qqhzb00XW26HwMAgGg8AYVQANlhYgVM1ERN19/vcMGZvM6nWr1rWn7E1M
vGevMgGeXcaGFIYwAU1cSHGMMtoGoDpkRw5d16l/W2QKiQdOrq7KENdQ9IcMZnEcnzu8iR36
57Ze89waqbIRGzAAEaMiN21vONnd4fvnJ3z65Hc837fc3fPrjZ5rXeVct83Z5Z3eLfN3zu8e
RYs3fO7x4JlREVE5dHn2/C8BeZP2K57Xuog14tedTMsdpxQyNrhKRFt1HcARF5UZcsCixjwh
ipMhd+F5O5qHjx0S0nQxsFi0PEOjgrPkZyvtT5aShlAs3acHMxt4V6dpIkdvLnNxy6JD4a+5
50b7ZGgU/D+P6fV3083vOQ85fMD8d5dndcv155XevNbt3yx2+LfN2XXq1pVzsVd2eO3x4Zoo
YjRkRlRJ1d883ddfztVWWWSeTkwp52o9WrhLr00U9L0AOoxbTsZGVGQsghJ5obRCsL1PcXvt
9ndLv2m2KOpDW1b7Onu3m9mZaz9HDdd3NnvcAAcZyfHQRwQ8xPDa/WbvVTzKnMNfvsZ7M1Nc
RIYyhpbizMvHUBVSVhfbpc2LO19C50sExgwYMGDD9b2avfdKmoH2z7GdhnVHVzfXArqQnsvu
XRp3LSqQ7KcbvPl2POSmpilecweJYlwMGDIFuzmAufK3bPxhvV7Psu7jPd9b5JJclu61a9OB
AVk33GYtj9HTszT896t1rj3EsSsfMOYz+fnnLOfx++r7iI9NHtpoMgeBCm8Bm+D4wHUkrJJr
Rwupzfn4/CIiCs5znOcvAdzADEMYEIAeMYEECGneb47654U6aA2IUMhxE6b+ve/A5o4Y0VAW
0JYMlpfdddejODlTjz+vxx2QkMZA8PhJ1EPtJ3NDrzVnFypUaOL90WHSmGIwm1+q8hYmr0Au
CUvcB885a4DGZkKO3vVfSJvec1kyZUr2GTWAGRHHSzF3lCiHV3eZoAAAAA5Y/YhzEz55ELSM
cVXr7UP14liXAwYM9i0E5J+p1R8fz11PjmJv4rpTuSp3cWznz31NJjSXetrTdBbU7A0C1zpO
pvh4kJCEhIQkPGyxtpCgSp3p6d0r7VnW5E5Bb0d6VgrGhhV1taNWv66/r1v7amZfud1Ts/i+
KSRKzqUTgmZeYmIj6nz3GMlgFgAhgVniYRcZGRkZGRkZGQr+Ftjnz3JmCGz48evrb5r0419a
deT35qQQFIyAa93ON+3DckBESsH1BNtG7p79IfbGK754OeZTAr9SB6Oi+7hNE+es3xmT22iI
9+CyYOtQiIdszKVq6zQhmKXxQpnlLE9PAHCxgeUeEU/rJ6tMYjzJNvceeNxXbkdXsLVykxqJ
urz01e9vJJL9I9j32/bu7p4/EzMzM3d1VVVV5+lK9uiTSKzoagXYaV1xl46vYuVtKc2ou5r5
K2YmyDcyMkHGcFvogqq6ejp6HZBiuZp1byOiOT7MldO2ju1KUOKyBoV9pfUlLnbTdNZwriLu
CO3VnOXN6bTjBNTNVOq+tjitpF3BuTOYY+icFmyrt6airNc3WtlKr2He+fx8mIi5DdwvYBka
6gxEE98InWSPACHgQBSrNtz4bGwswSwhJDASoYbC07IZlldltVMhNyxFvGC1gHjBGAGfQGMX
Cs16ysy7u/Xfd3d3a3VVTVVUlVVVT1RQAAyO7hZmAIAAAAkAAOAA/n777777HvvvoAcSAADC
gABAWABoBm9PR1d8A5l6Lr3fefU/Zmswqs0ZkRJqqiqqIYSH+iiJt6leCf0bdyMWQsquvuUR
Ecvz5+nty7u+d7ne73bM0Q+YVXQ4JSXgdUP8YJGJfcKZ4yzen+EP8ZmCPXnwowTORhFdYmX/
dgABQMY/AxhvCG7OLMzvP338vzM/CP8e/YX+3B8NCY2HfLu3sOzrZTvnnLvHmvkeS62vK1yq
171VuVqqxpbKb83ivvehtyufPx6vr3XsfKPvartcyUB4kJIlG0lVDlEaj1fNS49E4LGMB8HR
aY7nYGItd7BLF6qofbP2fC80QNMSr4Xws5UZM+aCeKK8oyTJNa2GckaalZhZJpMzduXNXqrs
jPu/BnvoIyUyJQksCNSZELxEdmfBq6y6ec1NFY6p2VejQ1bqnVXg05S1ZqkY2QiNgRkhkoNF
IyUyI2UGjGyNC+9HvO7uvGjzPfbhgmTTyzG7Ms02SDS6+oek6MMIx3LLeMASQAHmV0Na3L6m
ojxrVCR51jN+QQJPt4vrzcAnX1K2vm+JTWxnBOyyjmIcxfDWjM5fs1ec1VmdoW9+aLZex8BG
xOiEZopHeHdXYiVHYjW+LWnY16vizeeWu3xb5vPHb4tbsbGqESgjKgbhHYGamRRDAkJT+PTR
6o2C1Rtrzt999lX4oetcnJPnzUsTPojNEtrHoENanKAVDomaUbndVqpits4IiqWxvIU1Z93u
GHj1IGvaZYQvKVC8yqDEfWMAYWUcoIszPbqtR4Q950dJ9vobcpfgyVd1qvZmamU3S7wyrcp2
VmhpylzMbxuVWsGsrLXV5orMy9Y5TLxgaqqMpEqKxGpg2T4sFrdwvX6++duXzQpjaa+fWZt+
u/HjrW74vz39QNnGhr1yH5GLAgoBR4bLQ1mryUQ8eXv865DMzZ3ve93u2Z3h8xCvAdD5hqhe
agsB2zhyw2bOaz1fwq9ySUmcv9l3NwGOklJ3aHZvaIN5OWMzevmbznNCh9c+C98IjPGqbjSt
OF0txpbKuNS6Wt/je5rW61VetStZS1dVdNFM1k3xDWjW7Xe61Mqr+/zyJnzzi8Bc0cV2Ku+y
EY5CQZ6pFmlhoTVz7xJYfn/j/IfsWPqCGMggNUnTxgC+e8phPV9sKZ9Z4mp9YOk6UhtRR/oy
wfnl6ywD6BfSQoeo0TFMGXL+9KlUlKyGVOZnT9mc53f3LzopOGgUyI1UkUzprs6Oxrosd/r8
m3jp3tf2519ec28uQ1BmjkyGioTAyRWNUNkIkU2RU+vPnvNRPyG+R358mSTL7V9/Je3J8qrA
2B61PApDCgmK2uWfedNp4TSLOqp420piPql3i2XenHzeXc+ofk34vhaAsgF06GpTBvSk+AzU
EAxhcwdwZnD8zm8+Oul+vX12+vsXeZdONK5Zl4uVja3SfOaczWru6rNXiuXl4rrMLvKdUmav
FfjJl4+9nnI8Bao/NR5fO5hod1lt6UIsepnLOroXNJQ16C0jQt5vRHl9Rqa2jGfYaz3jxB4u
y1jAAzrVpzYdHZHhFVOFBszMufVyGNpuDM2btTedvdkXqecGX4DUiJEBohkZoCRD2Z+u6Kpm
oN+OLvVL3lW5K6vnWrb1a1eNXRJIVlvJTmrNTYzRSMlVPVWx3ve8ufORy5u1mHVJ2u+qkHVn
dA29LVegB5TZ1cPdVmIhqr5+rpLGzeXrV1rOk4SvDbuuM/ysxBC9BC7Izksqvqe19bGYLbLb
nKgceITVC5XAGEPTGkGZ3d9rOczdmZ/WfODwzfwX9ay6fjRVq0NK1lWuyt4ab1l23SUKlFNj
NHk2uF3e+V2+N/S9m/fG8Bbs38nznfc+VLbONsmbZcheGiB9aWg3uLLE4/Dg9eRK78znUGz+
Flnmc+OFUONfvIc2U+OmVbwvjj3fPqjE9ruTwIEHEypq5p2iRSy8BTdmUzOWn3NXyxQ+j87R
BOIqGXURlDIzGpmwRhd2od0YrTd67QlUeUL2rfIZEZESkRn6/m3O/fPN5r32c3PtzCLCyPEP
yGK227BG9XWk6hAPBbuSlgqtk7ppdDI4ZcxSFttStuN3e65hzWlLE8BG4l1jiXGsRqUKtLVO
7vp3u5mZiJmbu7u7t+O7q73MMcREP33gAAHgPjl+vfbJrvQ9z2jDJfdyWJXzpMyDZjiZA17y
S1ZjLlzuna+SyovibkuWnJ9fpfPe+P4vnz4wYMGDBhc9nD1A+gIdT2V+au+6e961hi9fVimB
3xQ5m+kdxO3GZaddznQydqp3d7dXDxLEuBgwZuZZYLnzm+pkxi3chPefJyk24UMObbbxnBoT
c03OlW0oLnu3dl73Ph4liXGjEcjt/h55fo0dySSS9/HwADjz58h5AKwhy5XfjnlrU0upwjfP
PogbmAAentTwHBYwK0WMCqVqec398oiTnOc5zlKKc8wiFCHKBR+3jXnnZ2M8IHRxx+N91v5w
qYgVVQ5vz/HJukvZ2m0xA1CEh9pDfE3xzhFhvPjz40HphpLSHDA5TaQ19+edd8TuRjxPEABY
xvlr6KMYGfDwMYAbAx9NtfGjXhtu39+33yfL1ar2/ffe9ieaSRwAAAAActlpkfmPE9lnve+8
8SxLvRgwZfsR4T55gCCwMMx4ARTw93S4w5mMM0uTKq3f2ZoKAb/PnxeqLuvbxpO1tWaLn1Lb
Oy5xScuWkiQkIlISGJCQhISEc2N6hLurX+8+ZSS2CV1cllpXijEL57vwuVB1rve/nzFTNJz2
8z9pkwVVrdc14mvGitZiIjMzEO75goZUSmVNIBjAn7eaFjIoQMj7DI0Hs+LE3jLb6vGrurbv
s18db8+WSHJe9/FakJ4SbrfnzFnx7uNBi02aCJT2+h28mOSFGPoseZbNG4SjDWiOuTtP8xpH
4qnq5d0OYOmr70l4/b3Jqq1y3Peta11Wvhmk2LJHmTmQDx8dZUu3G847uGvfMud34lj761/M
fc+y6qc0yPbuquK2mu597cxH3mZmbq7uqqq/MWTygY4QyKQ1mbXBkQQc8jeb5Y7n0upqL7M1
XAolPsnUug69fZsV3TzUnZF51Ocsc1rfX5zpznNrVHYyMp29Kcy3knAnGE1Y7chHJJbsq+iZ
3uqk7pzN7edldWOxKsi4MmIl1Uz1QFblKxrCIkhZiYZCc6mqaBOAMYH2xjI/QYxjADEQCeQ0
UQh2khZzUCTmtZ33zV3XLozfkyMpYsjGLHgGMZm52S5a302YnS1VVS1VVTVQWAAgKLvbANAL
AAQAAABIAAcQAf1e++++++x776ABxIAAMKAAEBfd3T3fyINxKXS3D1W4pp93etEc9CYdSeIh
4r6WWhvyVao0zm6q/qXear7ffMu7vT5zOc311hs57cEYc+Y6ylDZLub/R/Kevwlv4TWynJv+
IV3wNMXFoOYypqRM0X3OfIzdFZlzz0ZLfxePuq186N1jqlq8atyl1etFY6p1TeNvVrVct/jm
+vHb4tS0v0ui5b83mdJ6vPe9foLln3lb7d+5ocd7suWghULw7yqM+j0G6BrJYGF1MrnJjWlf
e33V2ytG4JDbZEPtSONdTlB8+F19VtknARkhVZGeQvSP52TgKHN4Mzeq9zWdzRUZeecF/Omq
GRnxQaqZEyKhqZEYRrnZru3Xq3s1q5bpvLr1a3jXq+AyEBXdkcyIwqkiqfzdM9+afuudyvbe
jOrQ90qzeVkhJ+nOfQf6JMby+Z2qeLHnk1ceeRByYM2w1PhvuXk1F2vyoT1PPqClE5BdTag0
wN0ClzNCG0JNGckTzNe3eYzY+vPRXWHTQmNjI0VkzgYkM3a79mG81dU93y25TwU3hdZS/FmF
5ZWq5fG7KvV7G79t/XH1rXZVzT+x/P++363QXaPx+d+V81DnrirNkfipWXUifx9c3DBh8xic
1Hkaka01K2kbTxXmWdntjYax9eYQi8jKaGvOJ1l8n6dlCEonzqMeBHYmiQo0dlDGZtN+3d+d
HR9vfz0z5Kbpa+T4q3KWryrcpatpunVO7Lr1alpa1XLWnjXq+RZu3Xr9gzRXBoSmvzvM17vv
eay1VV17frMnlO3M3w3BBNcllkjPe/cMwW9/eFec8zvL8jcRNa/H21l3d6fUZzm1hoeIu+rb
XRdxlXXn0iav9BsfXKn7JIAmm+/UfseFgO5IixEe7QhahkhiZWGkNCJpevtq8xm7Iu+ei+9h
GUzI0VFUzJkZlYlMzRSRVM2FTexublVNXk3mVU7eRsZs5VfqLzc3KmKVz+iJQ2FjAdUMnRgi
kmZ+SO3p/fUngLmzW3mvc+5qWpNnW6q/HkoqzUubTY9GGoZ61tda34XG8bzk3ucu5wdX94x+
af2uHvjeF84ieUZ/R5eu9iUOnciOlpmLJIRS017N5jy7QzP55wWX1HQakxkSAltdrW3u5Vw8
m3ZYvVrVc/kaWmZApRiQlMnBkRlwxgA7ZwSEp0Plx73cwy7jXfffZia8KV8K4zaOSwT8M15v
fuBlMUdYGtVOjHkUNeeLUJqJrxbiHnWPBlj3fm5caGyhOJ5vQLwGLNqZ7CqpPTK2iGTNpMzq
65Wc5m7Mz7sB4+DwWoR+PppumQBs5q34oK1jTdJsXd+u7xa71r1a73bq1quXyPPP45JzeERO
pmht7nr5ZPfer0F3R+djWfdZ8jS7tSLIlDslXKsWTBc1OQvocbdcDDW2ctu1fWleYm9yz2xH
KpoyGwg+X48FpXPzbchH8LfiQsi3S4pyCQDaiVZb1zUiuLntXmNkPd352yHnxHYyJpYOuld5
g1fmEkK1a1mhLvKeKbzWXqlrDKtylrMRu8pfd6b9wkhWreKb4LrKqq3hqpp8mXLvue8zb8fn
uqz4iTT14goMu0zlgjepCUvoQYwRaAbKaeEzGZvL5d4m/v+PLd3etajWtWvGaIjOVWSimVmP
mPx96gvYuck1g+mArskJ8Tz73Qs45GihGnJHpzWDShZGNIeSJWqu5zmM39i9/Y6+MrH9KrMr
MpaWqWmqp9gS9mN73m91a73bq1VQ/fnl3ni/cbzzbxa3dut/Y/c697yOAuZOeRXvt6mZZCjZ
IzPBpPjpGzd/G1ED2MYwxGMvre5OWnGZYGcPt9vqq2ku/FRZ3H2MIAicTkRKi0yEai4XZEgB
Cw8l8oewtdkqZifDYIOa/NPGTM2eK+Zz5850OXB3gJWJTPW3dWV4urVvjG3KcKdavFc1heXV
NaGm6U0BGSGTAyRQSEpmZmAEM0P55Xj2i+6r3Ne+17nLPmvHPx8jJqhZVHVj9LOk6IeQb7ME
oWGyW78r4rmPlZ34XQ6yvTly5c43YOxc73G+V2A1D7OLmdesf67H3c+994AAB4+fHUgmtmwP
1r9j2mdl9ns7vtq0lxpt3YTMhwbO7lXfYoCNuZh7KclG7DXO5erFnFWsEu4YMGDBgwnE3U85
hy254rdeY9isjfoU+z6o9h8vbxR1+ylvKC+c3OROhu9SpPa7YrMzXw8SxLgYMGbmWH631nHW
WP3e/XJrrPeub9d32e6dHT3c20d3cHVk3F90XkvXb2R6hA8SxLgYMGfzxhLqHqc1GKAEOue2
SGiYgsYH3H3NlI8AGQxs0pd3vOfv+ERIznOc5yTXMGUGQJlwMMsAYDhTQLRTgk2+XxrrV7tn
Ak6YHWu+K3qQUHWAcPEpYBkUxFi1WFOvlVWc1S624SDjWMAgQxj8DCYsSw/P1lLryc7JE753
e9eFRbKdAXR4OVMfiYhz+JfV+J8sbbTAAAAADNjo+vbzjFASrtma3nHvzn4zzvJ43Oc5znOc
5XOc5zj85znOc5yec5znORznOc5zkc5znOc5POc5znH5znOc5zlc5znONznOc5znOXznOcXn
Oc0R45zjc5zPOc4nOec5znOc5zXOcPnOc5znOc5zm+cLnOc5znOcGeQty91FziWiGiIuoqoq
ozLrbOfOd73utNrXe84/e971u973rd73ve973t9Lve9Xve963e973r973vW73ve9fpYwZngY
ADh3d373ve913ve973ve973vne96ve973vY72O973ve2O9vq973ve9jvc973vW7Xe973r973
vd97PV73ve973ve973nO973q96fe971u973ve97XegwaSnaQyOlqjssYwzSaOSE5B3dyOr+7
UFN/b4Pcuoqn9V3d6rs3l0ZlWNqTdExLmxsbaObG9QlnEu6QkJCEhIQszt1IdJmTt0Iw5BAn
en4iIsxytIq+WFOycGvXh41a8JU8PaGbvp4dtyZ6X3PmrsKHCihQsfYejq+Oub8H18bkANsh
Ish4YHFSoR566+pyCBdLnvpGfoGosjsvS2lpFtLuxdPMvxkkk4eUBKYEkAb5jXA/H00KiKqm
qr4h10hqEXV+KNggNeH0tEwGAH4ezez5ncBM9be9S1VrylSzBxlt7rMzbnrXEkRceKBhuBiA
I+dp43H2BSznKZqY49pMu6MbwqPKxMZGMVK+9eRrI2BiFIbpumF6uOkQNHx4RdAei65jZdBh
EJvKWULTlKooylRsVmzVG1y3kgaSSSP4+1Pvse+++3bvA/CJMzM3d1VVVV2IwBTWUiSWacpl
6RFzjs6V7cbOU1jmtmr3Ntx66iruJ3ouJlXFZaXXxuQuyedzU3zmb3ktbV25mb3RnbUW3vUd
DnrXVdMqexEzeZUuYpXMzarjN5EGRF1ukeb1nRnRF1skTkbjy1j001+a3mFlTrjN9F866652
ZTvo61JAJCQqQAoAAmVVSgSgGhSCFQIEhQPuQ6Py2MTaX7NIHZQ52PSUxgtLBTbKpGjNaYDM
MwQI54GaKQokYxIqCQAdY1WvXrjre/JWudenoslengEbi8LFUjLVy7u7u/Lzd3d3b3VJVVVG
gGABgAaAXd3oBgAYAGgFgAICgABhIAAcQB/P33333332PfQADiQAAYV3d3d0fCjn7HXl+1eG
qqwyYmS6Z5iZd5DJJOZI7Q9fCkD9H+s7nOgKIDU6bLW7xN/n8XDSTumXzmc5WGiHeuNIcyLz
8ghNkOM4jXlxsRM/hNtM0EKj8isx9md4aqrBpSv5ytrrnfPX378+OTpfv7+OWPd0t/FWrY0q
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
lVZORSfd3JpnSAWmHaAKO6UMKs4i0dbNH3GTzhFXXDbndSvIyc1Ut7nlLhsrkN5SCR7lVG0d
My73WnXFmg9qZy8XX0TGwPsvMm0Wjt5iXZF0kmccLNO3s7hSK5vrfVY07wW03Ocdw46nly0z
Hk7XR2HJWThHNRZiqamrfYaRIshqppZm6VTcTRdE74WN5qN6WaPrpvVPA6V7XLKqs7au7bbX
SzrJ3Csm1PZvFsuCdylVIzn0rX1czN3dQt6+m7xLnuTRGrofVsEvVGtpRmw76ljL59Srb3QB
gwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgw
YMGDBgwYMGDBgwYMGDBgwYMGDBgwYPJKXZoatWVnXBZVxxvdky6bqFXIU92kVu7kJp3u30IJ
neiZtK4Zupw5vcM18jejOoMHAG325Wxec+uXNnTmk3w77efROGXC244M5nK97s1Qp0ynlrr6
n11GpCqq5xVw85xddFZcxLidI07UC2b3jXr1RkwpOlSRVbm0o55qLhrJu96V2rc4lu85XkTT
l3LV5nZE1IpjBcTjU4q13lyVT2jK5TjU7GrVVYr7c3iXVVu5dokJqbubfdbczNcjip3tu6fL
VIC1w9N55sczunsTGhMVLVfZaranUsMW7lFmzj6Z62a6rapPFyrd3XCxETeTtqnuiiuOJKVG
5Vq9u+2srxqXFxVapsjnuvrVOodS8h0pU4NYmtxqKtvmny3jF1TVNtVe73RVw8jl2Y6nbiam
xGsutxw+zY6KN2uO7M1Fj7ypxXyvG9b6pvage87FWQXMVhKnLMlyutLc3jubim1MZm9XZlPV
AiZAw6JcObzZ2X0zVaVPS5RV5OdwEwq6qtpovOUYpnUCYLG3w+GDBgwYMGDBgwYMGDBgwYMG
DBgwYMGDBgyKqhgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgwYMGDBgw
YMGDBgwYMGldddajWMY8aGMTQi0IY6FyGIXIlCEOBCEIQheCELSRCEIRiKEKxFiEIRSEYKRC
NNt9vb3Pe1D5icoQqEIZaFzO4Y9SGMaye29H1K3KnrV3O7XVGdsZ2RKlPjFc4t5dW7heMp9G
LmTUTWK3kqc7stG68zZTLSxGpEa8wvY0dVgu03mBAAAAAB3b3d3cJJtthHcummbc73cs7sq8
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
lrSxVl/k0tZUlS3SpU2tX+sXckU4UJBvPgpQ
--7JfCtLOvnd9MIVvH
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: attachment; filename="iexl_general.s-jw.patch"
--- iexl_general.s.rz 2003-05-02 15:43:23.000000000 +0200
+++ iexl_general.s.jw 2003-05-02 15:43:23.000000000 +0200
@@ -1180,7 +1180,10 @@
cmp.l %d1,%d2
jbne .L93
.loc 17 188 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 17 189 0
+ move.l %a0,%a4
.loc 17 190 0
jbra .L76
.align 2
@@ -1332,7 +1335,10 @@
.align 2
.L113:
.loc 17 255 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 17 256 0
+ move.l %a0,%a4
.loc 17 257 0
jbra .L100
.align 2
@@ -1482,7 +1488,10 @@
.align 2
.L134:
.loc 17 332 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 17 333 0
+ move.l %a0,%a4
.loc 17 334 0
jbra .L121
.align 2
@@ -1579,7 +1588,10 @@
.align 2
.L148:
.loc 1 961 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 1 962 0
+ move.l %a0,%a4
.loc 1 963 0
.loc 1 979 0
jbra .L156
@@ -1670,7 +1682,10 @@
.align 2
.L161:
.loc 1 1039 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 1 1040 0
+ move.l %a0,%a4
.loc 1 1041 0
.loc 1 1056 0
jbra .L169
@@ -1759,7 +1774,10 @@
.align 2
.L174:
.loc 1 1110 0
- move.l (%a4)+,%d0
+ move.l %a4,%a0
+ move.l (%a0)+,%d0
+ .loc 1 1111 0
+ move.l %a0,%a4
.loc 1 1112 0
.loc 1 1128 0
jbra .L182
@@ -2490,7 +2508,10 @@
.loc 18 2464 0
.LBE33:
.LBB34:
- move.l (%a4)+,%d2
+ move.l %a4,%a0
+ move.l (%a0)+,%d2
+ .loc 18 2465 0
+ move.l %a0,%a4
.loc 18 2466 0
moveq.l #7,%d3
and.l %d6,%d3
@@ -3160,7 +3181,10 @@
.loc 18 567 0
.LBE78:
.LBB79:
- move.l (%a4)+,%d2
+ move.l %a4,%a0
+ move.l (%a0)+,%d2
+ .loc 18 568 0
+ move.l %a0,%a4
.loc 18 569 0
moveq.l #7,%d3
and.l %d6,%d3
@@ -3410,7 +3434,10 @@
.loc 19 439 0
.LBE86:
.LBB87:
- move.l (%a4)+,%d4
+ move.l %a4,%a0
+ move.l (%a0)+,%d4
+ .loc 19 440 0
+ move.l %a0,%a4
.loc 19 441 0
moveq.l #7,%d3
and.l %d6,%d3
@@ -3648,7 +3675,10 @@
.loc 18 269 0
.LBE94:
.LBB95:
- move.l (%a4)+,%d4
+ move.l %a4,%a0
+ move.l (%a0)+,%d4
+ .loc 18 270 0
+ move.l %a0,%a4
.loc 18 271 0
moveq.l #7,%d3
and.l %d6,%d3
@@ -3845,7 +3875,10 @@
.loc 18 1541 0
.LBE103:
.LBB104:
- move.l (%a4)+,%d2
+ move.l %a4,%a0
+ move.l (%a0)+,%d2
+ .loc 18 1542 0
+ move.l %a0,%a4
.loc 18 1543 0
moveq.l #7,%d3
and.l %d6,%d3
@@ -4063,7 +4096,10 @@
.loc 18 1286 0
.LBE111:
.LBB112:
- move.l (%a4)+,%d4
+ move.l %a4,%a0
+ move.l (%a0)+,%d4
+ .loc 18 1288 0
+ move.l %a0,%a4
.loc 18 1289 0
bfextu %d6{#26:#3},%d0
lea iexl_GetFromEA_l,%a1
@@ -6263,8 +6299,9 @@
move.l 36(%sp),%a1
move.l (%a1,%d0.l*4),%a0
jbsr (%a0)
+ addq.l #2,%a4
tst.b %d0
- jbne .L1249
+ jbne .L197
.loc 18 1360 0
moveq.l #7,%d0
and.l %d6,%d0
--7JfCtLOvnd9MIVvH--
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-05-02 12:26 Richard Zidlicky
0 siblings, 0 replies; 12+ messages in thread
From: Richard Zidlicky @ 2003-05-02 12:26 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1350 bytes --]
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Richard Zidlicky <rz@linux-m68k.org>
To: Jim Wilson <wilson@tuliptree.org>
Cc: Richard Henderson <rth@redhat.com>, gcc-gnats@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Fri, 2 May 2003 14:16:15 +0200
On Wed, Apr 30, 2003 at 10:57:05PM -0400, Jim Wilson wrote:
> I tried looking at this. It won't build cross without a bit of work,
> and the only native I can build at the moment is x86-linux which can't
> use global register variables.
I do routinely build it using distcc so a cross should be doable,
probably of very little use without a possibility to test it.
> I tried building it native on x86-linux anyways just to make sure I
> could build and run it. I thought it wasn't working at first. I had to
> add a 0 to the loops in bench1/bench2 before I was sure it was doing
> something. Otherwise it took a fraction of a second to run.
didn´t anticipate that much progress when I wrote the benchmarks ;)
> If you could send me a .i file and a pointer to where it was miscompiled
> that would be very helpful. I can build a m68k-linux cross compiler and
> look at it.
.. working on this, as the testing has to be done on the slow HW
this makes it slow to find the error.
Richard
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-05-01 6:06 Jim Wilson
0 siblings, 0 replies; 12+ messages in thread
From: Jim Wilson @ 2003-05-01 6:06 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Jim Wilson <wilson@tuliptree.org>
To: Richard Zidlicky <rz@linux-m68k.org>
Cc: Richard Henderson <rth@redhat.com>, gcc-gnats@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: 30 Apr 2003 22:57:05 -0400
I am able to work on this again.
On Tue, 2003-03-04 at 07:50, Richard Zidlicky wrote:
> If you need a heavy duty testcase, I maintain a program that uses global
> registers extensively and works on many architectures
> http://linux-q40.sourceforge.net/uqlx/uqlx.tar.bz2 (332K)
I tried looking at this. It won't build cross without a bit of work,
and the only native I can build at the moment is x86-linux which can't
use global register variables. So it is of no immediate help.
I tried building it native on x86-linux anyways just to make sure I
could build and run it. I thought it wasn't working at first. I had to
add a 0 to the loops in bench1/bench2 before I was sure it was doing
something. Otherwise it took a fraction of a second to run.
If you could send me a .i file and a pointer to where it was miscompiled
that would be very helpful. I can build a m68k-linux cross compiler and
look at it.
Otherwise, I could try compiling files with and without your gcc patch
to see what difference it makes, but there might be too much noise for
me to figure out what is going on.
Jim
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-04-06 19:46 Jim Wilson
0 siblings, 0 replies; 12+ messages in thread
From: Jim Wilson @ 2003-04-06 19:46 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Jim Wilson <wilson@tuliptree.org>
To: Richard Zidlicky <rz@linux-m68k.org>
Cc: Richard Henderson <rth@redhat.com>, gcc-gnats@gcc.gnu.org,
gcc-bugs@gcc.gnu.org, wilson@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: 06 Apr 2003 15:37:51 -0400
On Wed, 2003-04-02 at 15:49, Richard Zidlicky wrote:
> how does this differ from =C2=B4normal=C2=B4 global variables?
Normal global variables are stored in memory instead of in registers.
We don't add REG_NOTES and/or LOG_LINKS for values in memory like we do
for registers. Also, most optimization passes known that memory is
volatile across function calls, but they assume (call-saved) registers
will be preserved. Thus we need special treatment for global register
variables.
> my application is still miscompiled with this patch.=20
OK, so we need more work here.
> Tested only gcc-3.2, should this make any difference?
No.
I haven't had a chance to do any more work on this problem since my
original message, and won't for a while. I'm in the middle of a 4000 km
international move, and will be offline for the next week or two.
Jim
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-04-02 20:56 Richard Zidlicky
0 siblings, 0 replies; 12+ messages in thread
From: Richard Zidlicky @ 2003-04-02 20:56 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3556 bytes --]
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Richard Zidlicky <rz@linux-m68k.org>
To: Jim Wilson <wilson@tuliptree.org>
Cc: Richard Henderson <rth@redhat.com>, gcc-gnats@gcc.gnu.org,
gcc-bugs@gcc.gnu.org, wilson@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Wed, 2 Apr 2003 22:49:26 +0200
On Mon, Mar 10, 2003 at 12:16:23AM -0500, Jim Wilson wrote:
> Let me recap a bit. The current code calls mark_set_1 (...CLOBBER...)
> and mark_used_regs. This causes CALL_INSNs to get a REG_UNDEAD note for
> a global_reg, which confuses combine into deleting the insn that
> initializes the global_reg.
>
> If I change this to mark_set_1 (...SET...), then there are no
> REG_DEAD/REG_UNUSED notes which is correct. However, there are
> LOG_LINKS from the insn that sets the global_reg to the CALL_INSN, and
> from the CALL_INSN to the insn that uses the global_reg. This causes
> combine to merge the 3 instructions together, and the result is that the
> first insn that sets the global_reg gets simplified away. This could
> perhaps be fixed by modifying combine to know that calls and global_regs
> are special.
>
> If I avoid calling mark_set_1, then there are no REG_DEAD/REG_UNUSED
> notes, but there is still a LOG_LINK from the first insn that sets the
> global_reg to the CALL_INSN. When combine merges an unrelated insn into
> the CALL_INSN, it sees a LOG_LINK that doesn't appear to belong on the
> CALL_INSN, so it moves it to the next insn which uses the global_reg.
> Combine then merges two instructions that set/use the global_reg, and
> the first global_reg set before the call disappears again.
>
> Thus it seems that in order to get the right behavior, we need to avoid
> adding any REG_NOTES or LOG_LINKS for global_regs.
how does this differ from ´normal´ global variables?
> I had to go back to gcc-2.95.1 to find a compiler that worked for my two
> testcases, and it has this behavior.
interesting, gcc-3.0.3 worked fine with my application. With Richard
Henderson´s testcase 3.0.3 produces an ICE
x5.c: In function `main':
x5.c:20: Internal compiler error in verify_wide_reg_1, at flow.c:2769
It works with ´-O3´ though.
> I am off on a trip, so it will be a while before I am able to continue
> working on this.
fine, I have just returned after a longer trip myself.
> 2003-03-10 James E Wilson <wilson@tuliptree.org>
>
> * flow.c (mark_set_1): Handle global_regs like the frame pointer.
>
> Index: flow.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/flow.c,v
> retrieving revision 1.549
> diff -p -r1.549 flow.c
> *** flow.c 28 Feb 2003 10:11:47 -0000 1.549
> --- flow.c 10 Mar 2003 05:05:08 -0000
> *************** mark_set_1 (pbi, code, reg, cond, insn,
> *** 2709,2714 ****
> --- 2709,2715 ----
> #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
> && ! (regno_first == ARG_POINTER_REGNUM && fixed_regs[regno_first])
> #endif
> + && ! (regno_first < FIRST_PSEUDO_REGISTER && global_regs[regno_first])
> )
> {
> int some_was_live = 0, some_was_dead = 0;
my application is still miscompiled with this patch. Double checked by
replacing it with my patch and it works again. Tested only gcc-3.2, should
this make any difference?
I can try to identify the piece of code that was micompiled if it helps
but it will likely be a big unreadable ´*.i´ file.
Richard
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-03-10 5:16 Jim Wilson
0 siblings, 0 replies; 12+ messages in thread
From: Jim Wilson @ 2003-03-10 5:16 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Jim Wilson <wilson@tuliptree.org>
To: Richard Henderson <rth@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, rz@linux-m68k.org,
wilson@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: 10 Mar 2003 00:16:23 -0500
Let me recap a bit. The current code calls mark_set_1 (...CLOBBER...)
and mark_used_regs. This causes CALL_INSNs to get a REG_UNDEAD note for
a global_reg, which confuses combine into deleting the insn that
initializes the global_reg.
If I change this to mark_set_1 (...SET...), then there are no
REG_DEAD/REG_UNUSED notes which is correct. However, there are
LOG_LINKS from the insn that sets the global_reg to the CALL_INSN, and
from the CALL_INSN to the insn that uses the global_reg. This causes
combine to merge the 3 instructions together, and the result is that the
first insn that sets the global_reg gets simplified away. This could
perhaps be fixed by modifying combine to know that calls and global_regs
are special.
If I avoid calling mark_set_1, then there are no REG_DEAD/REG_UNUSED
notes, but there is still a LOG_LINK from the first insn that sets the
global_reg to the CALL_INSN. When combine merges an unrelated insn into
the CALL_INSN, it sees a LOG_LINK that doesn't appear to belong on the
CALL_INSN, so it moves it to the next insn which uses the global_reg.
Combine then merges two instructions that set/use the global_reg, and
the first global_reg set before the call disappears again.
Thus it seems that in order to get the right behavior, we need to avoid
adding any REG_NOTES or LOG_LINKS for global_regs.
I had to go back to gcc-2.95.1 to find a compiler that worked for my two
testcases, and it has this behavior. The change that broke it is:
2000-04-07 Richard Henderson <rth@cygnus.com>
* flow.c (loop_depth): Remove.
(reg_next_use, cc0_live, mem_set_list): Replace with ...
...
(mark_set_reg): Break out of mark_set_1.
...
I didn't manage to find the mail message for this patch. This command
cvs diff -p -r 1.247 -r 1.248 flow.c
will show you the patch if you want to look at it.
This is a large change that was mostly reorganizing code, but another
thing it does is delete one line of code in mark_set_1 that handles
global_regs like the frame pointer and arg pointer register. If I re-add
this one line of code, then both testcases I have start working again.
I am off on a trip, so it will be a while before I am able to continue
working on this.
2003-03-10 James E Wilson <wilson@tuliptree.org>
* flow.c (mark_set_1): Handle global_regs like the frame pointer.
Index: flow.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/flow.c,v
retrieving revision 1.549
diff -p -r1.549 flow.c
*** flow.c 28 Feb 2003 10:11:47 -0000 1.549
--- flow.c 10 Mar 2003 05:05:08 -0000
*************** mark_set_1 (pbi, code, reg, cond, insn,
*** 2709,2714 ****
--- 2709,2715 ----
#if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
&& ! (regno_first == ARG_POINTER_REGNUM && fixed_regs[regno_first])
#endif
+ && ! (regno_first < FIRST_PSEUDO_REGISTER && global_regs[regno_first])
)
{
int some_was_live = 0, some_was_dead = 0;
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-02-28 16:46 Jim Wilson
0 siblings, 0 replies; 12+ messages in thread
From: Jim Wilson @ 2003-02-28 16:46 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Jim Wilson <wilson@tuliptree.org>
To: Richard Henderson <rth@redhat.com>
Cc: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
rz@linux-m68k.org, wilson@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: 28 Feb 2003 11:43:48 -0500
On Fri, 2003-02-28 at 00:47, Richard Henderson wrote:
> /* Calls may also reference any of the global registers,
> so they are made live. */
> for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
> if (global_regs[i])
> mark_used_reg (pbi, regno_reg_rtx[i], cond, insn);
We first call mark_set_1 (... CLOBBER...) which kills the register.
Then we call mark_used_reg which makes it live again, and adds a
REG_DEAD note to the call. This REG_DEAD note is wrong. This confuses
combine into deleting the instruction because there is a REG_DEAD note
for it and no visible use of it after combination. It doesn't seem
right to modify combine to treat REG_DEAD notes for global regs
specially. I think we need to avoid adding the REG_DEAD note in the
first place.
Maybe what we should do here is call mark_set_reg (...SET...) for global
regs instead of mark_set_1 (...CLOBBER...). I think this might work. I
will try this. I have some other easier patches to deal with, so I will
get back to this later.
Jim
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-02-28 5:56 Richard Henderson
0 siblings, 0 replies; 12+ messages in thread
From: Richard Henderson @ 2003-02-28 5:56 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Richard Henderson <rth@redhat.com>
To: Jim Wilson <wilson@tuliptree.org>
Cc: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
rz@linux-m68k.org, wilson@gcc.gnu.org
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Thu, 27 Feb 2003 21:47:11 -0800
On Thu, Feb 27, 2003 at 10:23:53PM -0500, Jim Wilson wrote:
> ! /* Calls change all call-used registers. Calls may or may not
> ! change global registers. Since this will cause previous stores
> ! to be deleted as dead, we must assume that global registers are
> ! not set in the call. */
> for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
> ! if (TEST_HARD_REG_BIT (regs_invalidated_by_call, i)
> ! && ! global_regs[i])
I don't think this is right. The call may change the variable.
If we don't mark the value set, we won't have proper log_links.
The register was *supposed* to be marked used by
/* Calls may also reference any of the global registers,
so they are made live. */
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
if (global_regs[i])
mark_used_reg (pbi, regno_reg_rtx[i], cond, insn);
so I'm not sure where we went wrong...
A test case that I think may fail with your change is
register int d __asm__("d7");
void bar()
{
if (d != 1)
abort();
d = 4;
}
void baz()
{
if (d != 6)
abort();
}
int main()
{
d = 1;
bar();
d |= 2;
baz();
return 0;
}
If log_links are wrong, combine will see d=1 linked with d|=2 and
produce d=3.
r~
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-02-28 3:26 Jim Wilson
0 siblings, 0 replies; 12+ messages in thread
From: Jim Wilson @ 2003-02-28 3:26 UTC (permalink / raw)
To: wilson; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Jim Wilson <wilson@tuliptree.org>
To: gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
rz@linux-m68k.org, wilson@gcc.gnu.org, rth@redhat.com
Cc:
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Thu, 27 Feb 2003 22:23:53 -0500
This is a multi-part message in MIME format.
--------------060600050902010009060203
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7871
PR 7871 was broken by this patch from Richard Henderson
http://gcc.gnu.org/ml/gcc-patches/2001-07/msg01050.html
This PR uses a global register, and a store to the global register
before a call gets deleted as a dead store.
The problem with this patch is that it doesn't distinguish between
regsters which are definitely set by calls, and registers which might be
set by calls. In both cases, we can't do optimizations like cse across
the call. However, only in the former case can we delete stores before
the call as dead. In the latter case, a store before the call is not
dead, because the register might not be set in the call.
I think every part of the patch is right except for the flow.c change.
The flow.c change marks global regs as killed by calls which is not
correct. They might be killed, but we can't assume that, because then
we might delete a store that isn't dead.
I propose the following patch to fix the bug. I will check it in after
running the tests, and add the testcase to the testsuite if there isn't
already an equivalent one.
Jim
--------------060600050902010009060203
Content-Type: text/plain;
name="tmp.file"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="tmp.file"
2003-02-27 James E Wilson <wilson@tuliptree.org>
* flow.c (propagate_one_insn): Don't assume that calls set global
registers.
Index: flow.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/flow.c,v
retrieving revision 1.548
diff -p -r1.548 flow.c
*** flow.c 31 Jan 2003 06:52:48 -0000 1.548
--- flow.c 28 Feb 2003 03:14:51 -0000
*************** propagate_one_insn (pbi, insn)
*** 1798,1806 ****
mark_set_1 (pbi, CLOBBER, XEXP (XEXP (note, 0), 0),
cond, insn, pbi->flags);
! /* Calls change all call-used and global registers. */
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
! if (TEST_HARD_REG_BIT (regs_invalidated_by_call, i))
{
/* We do not want REG_UNUSED notes for these registers. */
mark_set_1 (pbi, CLOBBER, regno_reg_rtx[i], cond, insn,
--- 1798,1810 ----
mark_set_1 (pbi, CLOBBER, XEXP (XEXP (note, 0), 0),
cond, insn, pbi->flags);
! /* Calls change all call-used registers. Calls may or may not
! change global registers. Since this will cause previous stores
! to be deleted as dead, we must assume that global registers are
! not set in the call. */
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
! if (TEST_HARD_REG_BIT (regs_invalidated_by_call, i)
! && ! global_regs[i])
{
/* We do not want REG_UNUSED notes for these registers. */
mark_set_1 (pbi, CLOBBER, regno_reg_rtx[i], cond, insn,
--------------060600050902010009060203--
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2003-02-28 3:02 wilson
0 siblings, 0 replies; 12+ messages in thread
From: wilson @ 2003-02-28 3:02 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, nobody, rz, wilson
Synopsis: ICE on legal code, global register variables problems
Responsible-Changed-From-To: unassigned->wilson
Responsible-Changed-By: wilson
Responsible-Changed-When: Fri Feb 28 03:02:04 2003
Responsible-Changed-Why:
Changing state.
State-Changed-From-To: feedback->analyzed
State-Changed-By: wilson
State-Changed-When: Fri Feb 28 03:02:04 2003
State-Changed-Why:
Broken by this patch
http://gcc.gnu.org/ml/gcc-patches/2001-07/msg01050.html
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7871
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: c/7871: ICE on legal code, global register variables problems
@ 2002-12-14 12:56 Richard Zidlicky
0 siblings, 0 replies; 12+ messages in thread
From: Richard Zidlicky @ 2002-12-14 12:56 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c/7871; it has been noted by GNATS.
From: Richard Zidlicky <rz@linux-m68k.org>
To: bangerth@dealii.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c/7871: ICE on legal code, global register variables problems
Date: Sat, 14 Dec 2002 20:40:37 +0100
On Wed, Nov 27, 2002 at 03:44:03PM -0000, bangerth@dealii.org wrote:
> Synopsis: ICE on legal code, global register variables problems
>
> State-Changed-From-To: open->feedback
> State-Changed-By: bangerth
> State-Changed-When: Wed Nov 27 07:44:02 2002
> State-Changed-Why:
> What happened to the patch you appended? I does not seem
> to have been applied...
I have not seen any comments about this bugreport and I am pretty
sure the problem is not m68k specific (though the simple testcase
may not trigger it on every other arch).
Richard
^ permalink raw reply [flat|nested] 12+ messages in thread
* c/7871: ICE on legal code, global register variables problems
@ 2002-09-09 14:36 Richard Zidlicky
0 siblings, 0 replies; 12+ messages in thread
From: Richard Zidlicky @ 2002-09-09 14:36 UTC (permalink / raw)
To: gcc-gnats
>Number: 7871
>Category: c
>Synopsis: ICE on legal code, global register variables problems
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Mon Sep 09 14:36:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: Richard Zidlicky
>Release: 3.2
>Organization:
>Environment:
native and crosscompiled
target: m68k-unknown-linux-gnu
configured with: ../gcc-3.2/configure --enable-languages=c --disable-checking --with-newlib --without-headers --target=m68k-linux
>Description:
attached test program causes internal error. In other similar cases
gcc will emit wrong code, omitting stores to global register variables
which it falsely considers dead.
This is a regression from gcc 3.0, and 2.9*
/data/rz/build-m68k-3.2-release/gcc/cc1 -O1 -m68020-60 x4m68k.i
x4.c: In function `foo':
x4.c:23: Internal compiler error in verify_wide_reg, at flow.c:557
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
.file "x4m68k.i"
>How-To-Repeat:
# 1 "x4.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "x4.c"
void bar(void);
extern int x1;
register int g1 asm("%d7");
# 19 "x4.c"
void foo(void)
{
g1=999;
bar();
}
>Fix:
This patch cures the problem:
--- gcc-3.2-cvs/gcc/flow.c.rz Thu Apr 18 16:21:09 2002
+++ gcc-3.2-cvs/gcc/flow.c Wed Aug 21 22:49:01 2002
@@ -1770,8 +1770,11 @@
so they are made live. */
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
if (global_regs[i])
- mark_used_reg (pbi, gen_rtx_REG (reg_raw_mode[i], i),
- cond, insn);
+ {
+ SET_REGNO_REG_SET (pbi->reg_live, i);
+ mark_used_reg (pbi, gen_rtx_REG (reg_raw_mode[i], i),
+ cond, insn);
+ }
}
}
>Release-Note:
>Audit-Trail:
>Unformatted:
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2003-05-02 14:16 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-02 14:16 c/7871: ICE on legal code, global register variables problems Richard Zidlicky
-- strict thread matches above, loose matches on Subject: below --
2003-05-02 12:26 Richard Zidlicky
2003-05-01 6:06 Jim Wilson
2003-04-06 19:46 Jim Wilson
2003-04-02 20:56 Richard Zidlicky
2003-03-10 5:16 Jim Wilson
2003-02-28 16:46 Jim Wilson
2003-02-28 5:56 Richard Henderson
2003-02-28 3:26 Jim Wilson
2003-02-28 3:02 wilson
2002-12-14 12:56 Richard Zidlicky
2002-09-09 14:36 Richard Zidlicky
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).