drochner
ad37bd5da3
fix gcc bug #34130 (wrong multiplication with negative constants
...
inside abs()) which got some attention in the linux kernel mailing
list recently
2007-11-20 23:27:56 +00:00
skrll
c1e4ee94be
Fix kernel profiling on HPPA.
...
- stop gcc emitting stuff that HPUX requires
- don't use splhigh() in MCOUNT_ENTER as a call to _mcount will be
generated at the moment. Disable interrupts in hardware instead.
- Fix _PROF_PROLOGUE to save/restore all the register args when calling
_mcount.
- Fixup LEAF_ENTRY to dtrt (I think) in the GPROF case.
- Provide LEAF_ENTRY_NOPROFILE and sprinkle its use where i) profiling
causes problems, e.g. trap handlers, and ii) where it just doesn't
make sense, e.g. start.
2007-11-12 12:58:10 +00:00
christos
2872c55cb0
Add a hack to handle that the __stack_chk_fail_local call is not generated
...
properly for pic code; more explained in the code.
2007-09-15 16:24:06 +00:00
mrg
70d2e95cee
merge GCC 4.1-20070620.
2007-06-21 04:01:59 +00:00
mrg
f73a50514d
import GCC-4.1 branch from 20070620 (revision 125891). this fixes 78
...
GCC PR's listed below, and also fixes some netbsd PR's.
30370
C++/28988
C++/30016
C++/30168
C++/30221
c++/28999
c++/30536
c++/30847
c++/30852
c++/30895
c++/31074
c++/31449
c++/31517
c++/31806
c++/31809
c/31520
debug/29906
debug/30189
inline-asm/32109
libstdc++/28125
libstdc++/30586
middle-end/24427
middle-end/29683
middle-end/30313
middle-end/30364
middle-end/30433
middle-end/30473
middle-end/30729
middle-end/30761
middle-end/31448
middle-end/32285
objc/27438
objc/30479
other/27843
preprocessor/30468:
rtl-optimization/28011
rtl-optimization/28173
rtl-optimization/28772
rtl-optimization/29329
rtl-optimization/29599
rtl-optimization/30643
rtl-optimization/30787
rtl-optimization/30931
rtl-optimization/31691
target/18989
target/19087
target/25448
target/26090
target/28623
target/28675
target/29487
target/30289
target/30483
target/30848
target/31022
target/31123
target/31137
target/31245
target/31361
target/31380
target/31480
target/31582
target/31641
target/31701
target/31876
target/32163
tree-opt/30045
tree-optimization/26643
tree-optimization/26854
tree-optimization/26998
tree-optimization/27087
tree-optimization/29446
tree-optimization/29925
tree-optimization/30212
tree-optimization/30590
tree-optimization/30823
tree-optimization/31632
tree-optimization/32353
2007-06-20 22:55:47 +00:00
he
47b1d7c5c4
Commit generated file after correcting to use the "standardized"
...
variable for overriding SSP functionality location test.
2007-06-07 15:56:48 +00:00
he
678b5429b3
Instead of inventing a new environment variable to override the
...
SSP functionality location test, use gcc_cv_libc_provides_ssp instead,
as hinted by freza@ and uwe@.
2007-06-07 14:36:27 +00:00
he
20237a6fdb
Commit autoconf-generated file after modifying configure.ac to allow
...
override of the TARGET_LIBC_PROVIDES_SSP test.
2007-06-07 08:59:53 +00:00
he
bd8f620dfb
Modify the gcc configure script to allow override of the "target libc
...
has ssp functions built-in" test via the TARGET_LIBC_PROVIDES_SSP environment
variable, to allow us to configure a cross-compiler appropriately without
having to try to find out by looking in the target's source directory.
Tweak our build to tell gcc that the ssp bits are now in libc.
The native compiler appears to already think that the ssp bits
live in libc, so no change appears to be needed there.
The autoconf-generated configure script will be committed separately shortly.
2007-06-07 08:58:58 +00:00
uwe
86fd3cca3a
Fix gcc codegen bug that manifests during generation of stack
...
protector code for sh3. Details in gcc pr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32163
Author: kkojima
Date: Sun Jun 3 04:38:52 2007
New Revision: 125292
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=125292
Log:
PR target/32163
* config/sh/sh.md (symGOT_load): Don't schedule insns when
the symbol is generated with the stack protector.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sh/sh.md
2007-06-03 21:02:44 +00:00
matt
3649c80dc2
Fix LP64 issue with invalid register names. When printing a register name,
...
look in reg_renumber if the register >= FIRST_PSEUDO_REGISTER.
Add code to not use movc3 for small fixed (<= 48 byte) moves. Instead
expand them to the proper series of mov[qlwb] instructions.
2007-04-20 16:30:32 +00:00
matt
517c8a8b40
Make movmemhi insn pattern use "o" constraint to avoid codegen bugs.
...
Fix some non-use of MEM_P, REG_P, CONST_INT_P.
2007-04-18 22:55:24 +00:00
matt
d96c1bd9b7
At lower optimization levels, constants can tricle to subdi3. Deal with it.
2007-04-14 20:43:03 +00:00
matt
e449ba3363
Change tst<mode> pattern to use nrmT for constraints instead of g.
2007-04-13 20:02:42 +00:00
matt
c9e6e23717
If possible, adjust extzv/insv to not cross int boundaries.
2007-04-11 02:21:07 +00:00
matt
0606d1948b
when pic, symbol [ + offset ] + reg is indexed so it's mode dependent.
...
Make sure we indicate that. (fixes the as bug)
2007-04-09 03:44:14 +00:00
matt
2d3546bb65
Fix a optimize_size problem in the correct (and smaller) manner.
2007-04-08 10:32:42 +00:00
matt
768e321a24
Switch back to mnegl hi, mnegl lo, sbwc and prevent split_quadword_operands
...
from using POST_INC in the case of negation. Fix reversal of operands in
-Os use of ashq.
2007-04-08 03:07:23 +00:00
matt
2c37c6c8f1
Fix a problem with -Os.
2007-04-07 22:50:27 +00:00
matt
43a709f886
2006-08-24 Richard Guenther <rguenther@suse.de>
...
* builtins.c (fold_builtin_classify): Fix typo.
2007-04-07 06:13:15 +00:00
matt
4fab8ae973
Fix addition of negative 64bit constants. Don't optimize the instructions
...
too much otherwise we might use some that don't affect the carry bit. Make
sure we are using paired instructions (add/adwc, sub/sbwc).
2007-04-06 22:46:36 +00:00
matt
5db28f425f
When mova[lq] to a push operand, do a pusha[lq] instead.
2007-04-06 20:50:33 +00:00
matt
4af7958221
Fix 64-bit negation.
2007-04-06 20:49:02 +00:00
matt
086f0329dc
Fix constraints on ffs.
2007-04-02 16:45:39 +00:00
matt
20feb5b064
Fix cut-and-pasto.
2007-04-02 16:44:31 +00:00
matt
831f4686c1
Get rid of old unused constraints.
2007-04-02 16:44:17 +00:00
matt
abe5cdbc17
Add __builtin_ffs support.
2007-03-31 23:12:37 +00:00
matt
deb622ec5b
Final step. Turn on generation of PIC code. Full release build builds and
...
works.
2007-03-31 05:55:11 +00:00
matt
dec8719ee4
For nonimmediate operands of SImode, don't use "g" anymore, use "nrmT" instead.
...
"g" matches just about anything including SYMBOL_REF, CONST, LABEL_REF which
should not be operands for most instructions in PIC mode. (movsi can handle
then and addsi3 can handle them in a few limited cases).
2007-03-31 01:23:26 +00:00
matt
aa3062f197
Step 2. Produces PIC code but doesn't satisfies the constraints needed
...
by userland. (external symbols can still be indirected and relocs for
symbol + offset are emitted).
2007-03-31 00:59:47 +00:00
matt
57ad7b9e42
Use HOST_WIDE_INT where appropriate. Cleanup split_quadword_operands
2007-03-30 22:03:28 +00:00
matt
f775e4410d
Enable new quadmove code. Only use mova[lq] instead of ashl when
...
!optimize_size. When optimize_size is on, try to use ashl if possible
if setting a 6bit unsigned quantity in the word.
2007-03-30 22:02:26 +00:00
matt
120d27ab08
Add symbolic_operand (matches const, symbol_ref, label_ref).
2007-03-30 21:25:01 +00:00
matt
1336eda547
Remove split_quadword_operands
2007-03-30 21:24:03 +00:00
matt
9e311d116b
Simplify the address_operand patterns. Use gcc's macros and split between
...
push and mov addr patterns.
2007-03-30 21:23:42 +00:00
matt
d18d7c0fc4
Fix a few missing REG_P, use symbolic_operand instead of testint CONST/SYMBOL_REF/LABEL_REF, make split_quadword_operands static, don't pass the insn just the rtx code for the insn
2007-03-30 21:15:24 +00:00
matt
58ad121651
Step 1 of getting gcc to generate VAX PIC code again. These steps are being
...
committed in "smallish" steps. This step incorporates the switch to MEM_P,
REG_P, and CONST_INT_P. Use bool/true/false where appropriate. PRINT_OPERAND
moves from being a large macro in vax.h print_operand in vax.c. Fix rtx cost
for a constant of 0. This eliminates unneeded moves when setting to 0 would
be fine.
Lastly, include completely new (on by default) code for DImode move, addition,
and subtract. This code is significantly faster and smaller that what existed
before.
2007-03-30 20:25:46 +00:00
matt
7457e904c0
Add CONST_INT_P
2007-03-30 19:47:19 +00:00
christos
493edcfdc7
improve on TARGET_LIBC_PROVIDES_SSP test suggested from phone.
2007-02-23 21:31:13 +00:00
freza
592d6d615c
Fix MKDEBUGLIB build.
2007-02-16 16:34:17 +00:00
christos
bb1029ffc1
Don't mark 0 length arrays as being too small for stack protection.
2007-01-27 01:27:29 +00:00
mrg
80ab5c909f
fix the list of headers to check for on netbsd
2007-01-13 08:30:13 +00:00
mrg
fb1bedf6c8
bump NetBSD version
2007-01-11 07:19:06 +00:00
mrg
d84579c1c7
merge GCC 4.1.2-20070110.
2007-01-11 06:59:53 +00:00
mrg
d4afbdede5
import GCC-4.1 branch from 20070110 (revision 120647). this fixes the
...
44 GCC PR's listed below (some have already been applied to NetBSD GCC)
and at least one NetBSD PR:
PR bootstrap/28400
PR c++/27369
PR c/25795
PR c/25993
PR c/29092
PR c/29736
PR c/30360
PR debug/26964
PR libstdc++/11953
PR middle-end/21032
PR middle-end/26306
PR middle-end/27826
PR middle-end/28116
PR middle-end/29241
PR middle-end/29250
PR middle-end/29584
PR middle-end/29695
PR middle-end/29753
PR middle-end/30286
PR rtl-optimization/25514
PR rtl-optimization/27736
PR rtl-optimization/27761
PR rtl-optimization/28970
PR rtl-optimization/29631
PR rtl-optimization/29797
PR target/18553
PR target/24036
PR target/29114
PR target/29319
PR target/29377
PR target/29449
PR target/30039
PR target/30173
PR target/30185
PR target/30230
PR tree-opt/28545
PR tree-opt/29788
PR tree-opt/29964
PR tree-optimization/27891
PR tree-optimization/28888
PR tree-optimization/29581
PR tree-optimization/29610
PR tree-optimization/29637
PR tree-optimization/30212
2007-01-11 02:52:39 +00:00
mrg
79780a5fbb
import GCC-4.1 branch from 20070110 (revision 120647). this fixes the
...
44 GCC PR's listed below (some have already been applied to NetBSD GCC)
and at least one NetBSD PR:
PR bootstrap/28400
PR c++/27369
PR c/25795
PR c/25993
PR c/29092
PR c/29736
PR c/30360
PR debug/26964
PR libstdc++/11953
PR middle-end/21032
PR middle-end/26306
PR middle-end/27826
PR middle-end/28116
PR middle-end/29241
PR middle-end/29250
PR middle-end/29584
PR middle-end/29695
PR middle-end/29753
PR middle-end/30286
PR rtl-optimization/25514
PR rtl-optimization/27736
PR rtl-optimization/27761
PR rtl-optimization/28970
PR rtl-optimization/29631
PR rtl-optimization/29797
PR target/18553
PR target/24036
PR target/29114
PR target/29319
PR target/29377
PR target/29449
PR target/30039
PR target/30173
PR target/30185
PR target/30230
PR tree-opt/28545
PR tree-opt/29788
PR tree-opt/29964
PR tree-optimization/27891
PR tree-optimization/28888
PR tree-optimization/29581
PR tree-optimization/29610
PR tree-optimization/29637
PR tree-optimization/30212
2007-01-11 02:42:35 +00:00
mrg
b0b8ac17fb
import GCC-4.1 branch from 20070110 (revision 120647). this fixes the
...
44 GCC PR's listed below (some have already been applied to NetBSD GCC)
and at least one NetBSD PR:
PR bootstrap/28400
PR c++/27369
PR c/25795
PR c/25993
PR c/29092
PR c/29736
PR c/30360
PR debug/26964
PR libstdc++/11953
PR middle-end/21032
PR middle-end/26306
PR middle-end/27826
PR middle-end/28116
PR middle-end/29241
PR middle-end/29250
PR middle-end/29584
PR middle-end/29695
PR middle-end/29753
PR middle-end/30286
PR rtl-optimization/25514
PR rtl-optimization/27736
PR rtl-optimization/27761
PR rtl-optimization/28970
PR rtl-optimization/29631
PR rtl-optimization/29797
PR target/18553
PR target/24036
PR target/29114
PR target/29319
PR target/29377
PR target/29449
PR target/30039
PR target/30173
PR target/30185
PR target/30230
PR tree-opt/28545
PR tree-opt/29788
PR tree-opt/29964
PR tree-optimization/27891
PR tree-optimization/28888
PR tree-optimization/29581
PR tree-optimization/29610
PR tree-optimization/29637
PR tree-optimization/30212
2007-01-11 02:31:47 +00:00
matt
9b573944b4
2006-12-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
...
PR target/30039
* pa.md (high:DI and lo_sum:DI): Handle 64-bit CONST_INTs in 32-bit
patterns. Correct length of high:DI instruction sequence.
2006-12-10 00:19:32 +00:00
chs
a3f1a799dd
apply part of gcc SVN rev 112421 (for building on solaris):
...
* config.gcc (sh*-*-*): Don't use c-c ranges for tr.
2006-12-09 21:59:50 +00:00
skrll
d6e38a90f8
Pull across the gcc fixes for the ICEs seen when cross-compiling hp700 on
...
64bit hosts.
- gimpy's fix has been done differently when fixing gcc
target/29114
- the second is one I debugged with Dave Anglin's help. The fix
is from Dave.
There still seem to be codegen bugs, however.
Bump version to NetBSD nb3 20061125
OK'd by mrg.
2006-11-25 10:05:43 +00:00