summaryrefslogtreecommitdiff
path: root/gcc/config/a29k
Commit message (Collapse)AuthorAgeFilesLines
* (movqi): Call loadhi, not loadqi.kenner1994-07-111-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7714 138bc75d-0d04-0410-961f-82ee72b054a4
* (movqi): Add missing `DONE'.kenner1994-06-291-2/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7603 138bc75d-0d04-0410-961f-82ee72b054a4
* (smulsi3_highpart, umulsi3_highpart): New patterns.tege1994-06-291-0/+22
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7590 138bc75d-0d04-0410-961f-82ee72b054a4
* (PREDICATE_CODES): Add cmplsrcb_operand.tege1994-06-151-0/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7478 138bc75d-0d04-0410-961f-82ee72b054a4
* (cmplsrcb_operand): New predicate.tege1994-06-151-0/+16
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7477 138bc75d-0d04-0410-961f-82ee72b054a4
* (logical patterns): Tune to give better code for immediate values.tege1994-06-151-21/+28
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7476 138bc75d-0d04-0410-961f-82ee72b054a4
* (clobbers_to): Deleted.kenner1994-05-111-31/+30
| | | | | | | | (call_internal, call_value_internal): New patterns. (call, call_value): Just call new patterns and a29k_clobbers_to. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7277 138bc75d-0d04-0410-961f-82ee72b054a4
* (a29k_clobbers_to): New function.kenner1994-05-111-0/+27
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@7276 138bc75d-0d04-0410-961f-82ee72b054a4
* (all floating point): If -msoft-float, don't allow anydje1994-03-021-26/+26
| | | | | | | floating point builtin operations. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6689 138bc75d-0d04-0410-961f-82ee72b054a4
* (TARGET_SOFT_FLOAT): Define.dje1994-03-021-0/+6
| | | | | | | (TARGET_SWITCHES): Add -msoft-float. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6687 138bc75d-0d04-0410-961f-82ee72b054a4
* (REG_CLASS_CONTENTS): Fix problems with last word of register set inkenner1994-01-131-4/+13
| | | | | | | | | some classes. (MEMORY_MOVE_COST): New macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6388 138bc75d-0d04-0410-961f-82ee72b054a4
* (output_prolog): Update debug reg map when we have -mkernel-registers.kenner1994-01-121-0/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6382 138bc75d-0d04-0410-961f-82ee72b054a4
* (print_operand, case 'F'): If we have to do the last prolog insn, givekenner1994-01-111-2/+11
| | | | | | | that priority for an unfilled delay slot. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6369 138bc75d-0d04-0410-961f-82ee72b054a4
* Define CAN_DEBUG_WITHOUT_FP; delete OPTIMIZATION_OPTIONS.kenner1993-12-311-11/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6348 138bc75d-0d04-0410-961f-82ee72b054a4
* Rename R_ACC to R_ACU to not conflict with access.h.kenner1993-12-252-8/+8
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6321 138bc75d-0d04-0410-961f-82ee72b054a4
* (TARGET_DEFAULT): Update to use new values.kenner1993-12-231-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6278 138bc75d-0d04-0410-961f-82ee72b054a4
* (secondary_reload_class): Kernel regs are in same class as user regs.kenner1993-12-021-1/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6176 138bc75d-0d04-0410-961f-82ee72b054a4
* (movti split): Set CR to 3, not 1 like DImode.kenner1993-12-021-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6175 138bc75d-0d04-0410-961f-82ee72b054a4
* Define SHIFT_COUNT_TRUNCATED to have a value of 1.kenner1993-10-111-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5732 138bc75d-0d04-0410-961f-82ee72b054a4
* (incoming_regs): Only use 16 registers for parameter passing.kenner1993-10-041-1/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5591 138bc75d-0d04-0410-961f-82ee72b054a4
* (CPP_PREDEFINES): Add system/cpu/machine assertions where missing.dje1993-10-022-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5557 138bc75d-0d04-0410-961f-82ee72b054a4
* (R_KR): New macro.kenner1993-10-011-51/+84
| | | | | | | | | | | | | | | (FIRST_PSEUDO_REGISTER, FIXED_REGISTERS, CALL_USED_REGISTERS): Adjust for more registers present. (REG_ALLOC_ORDER, REG_CLASS_CONTENTS, REGISTER_NAMES): Likewise. (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, REGNO_REG_CLASS): Likewise. (CONDITIONAL_REGISTER_USAGE): Swap names rather than replacing them. (TARGET_LARGE_MEMORY): New flag; change value for all others. (ENCODE_SECTION_INFO): New macro. (TARGET_SWITCHES): Add "normal" and change values. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5542 138bc75d-0d04-0410-961f-82ee72b054a4
* (gpc_reg_operand): Include kernel registers.kenner1993-10-011-3/+6
| | | | | | | | (call_operand, case SYMBOL_REF): Handle TARGET_LARGE_MEMORY and SYMBOL_REF_FLAG. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5541 138bc75d-0d04-0410-961f-82ee72b054a4
* (ASM_FILE_START): Quote special characters in file names.eggert1993-09-282-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5497 138bc75d-0d04-0410-961f-82ee72b054a4
* Use WORD_REGISTER_OPERATION and LOAD_EXTEND_OP and deletekenner1993-09-251-3/+9
| | | | | | | BYTE_LOADS_{SIGN,ZERO}_EXTEND. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5477 138bc75d-0d04-0410-961f-82ee72b054a4
* (PREDICATE_CODES): Fix typos and add missing entries.kenner1993-09-191-5/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5356 138bc75d-0d04-0410-961f-82ee72b054a4
* Add new parameter to move_block_from_reg calls.wilson1993-07-281-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5018 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove #define of alloca to __builtin_alloca.kenner1993-06-261-6/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@4756 138bc75d-0d04-0410-961f-82ee72b054a4
* (FUNCTION_VALUE_REGNO_P): True only for the first register in thekenner1993-04-171-1/+1
| | | | | | | group. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@4168 138bc75d-0d04-0410-961f-82ee72b054a4
* (multiply/multiplu/mulm/mulmu insns): These clobber Q.kenner1993-03-261-18/+29
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3885 138bc75d-0d04-0410-961f-82ee72b054a4
* (PROMOTE_MODE): Fix typo.kenner1993-03-121-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3720 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove 29050-specific variants of patterns generating loadm that havekenner1993-01-281-55/+5
| | | | | | | | earlyclobber. This was put in for some very old version of the '050, which isn't used anymore, that had a bug. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3376 138bc75d-0d04-0410-961f-82ee72b054a4
* (MY_ISCOFF): New macro.kenner1993-01-271-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3362 138bc75d-0d04-0410-961f-82ee72b054a4
* (CLIB): Add -lld.kenner1993-01-271-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3357 138bc75d-0d04-0410-961f-82ee72b054a4
* Delete emacs local-variables block at end.kenner1993-01-251-10/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3342 138bc75d-0d04-0410-961f-82ee72b054a4
* # Fix misspellings in comments.eggert1993-01-101-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3179 138bc75d-0d04-0410-961f-82ee72b054a4
* (OBJECT_FORMAT_COFF): Add definition.kenner1992-12-311-0/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3010 138bc75d-0d04-0410-961f-82ee72b054a4
* Include a29k/a29k.h instead of a29k.h.kenner1992-12-271-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2916 138bc75d-0d04-0410-961f-82ee72b054a4
* (divsf3): Fix typo in mode of DIV.kenner1992-12-251-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2911 138bc75d-0d04-0410-961f-82ee72b054a4
* Consistently use `&' in constraint of MATCH_SCRATCH.kenner1992-12-201-27/+27
| | | | | | | | Always use a reg as 4th arg of dmac/fmac even if ignored by insn. Uses of `b' as a constraint in multi-word reload patterns should be `c'. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2900 138bc75d-0d04-0410-961f-82ee72b054a4
* (secondary_reload_class): Return CR_REGS for larger than word memory,kenner1992-12-201-6/+10
| | | | | | | and BP_REGS for part-word mem with no DW. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2899 138bc75d-0d04-0410-961f-82ee72b054a4
* (LINK_SPEC): Use -T, not -c, for new gld and change file name tokenner1992-12-111-1/+2
| | | | | | | default.gld from default.ld. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2860 138bc75d-0d04-0410-961f-82ee72b054a4
* (insv): Remove constraints from operand matching const_0_operand.kenner1992-11-181-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2757 138bc75d-0d04-0410-961f-82ee72b054a4
* (movqi, movhi, reload_{in,out}{qi,hi}): Use a29k_set_memflags.kenner1992-10-241-51/+52
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2590 138bc75d-0d04-0410-961f-82ee72b054a4
* (a29k_set_memflags, a29k_set_memflags_1): New functions.kenner1992-10-241-0/+62
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2589 138bc75d-0d04-0410-961f-82ee72b054a4
* (long constant split): Use gen_lowpart instead of making a SUBREGkenner1992-10-221-2/+2
| | | | | | | directly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2560 138bc75d-0d04-0410-961f-82ee72b054a4
* (TARGET_SWITCHES): Add missing complementary switches:kenner1992-10-221-0/+2
| | | | | | | -mno-stack-check and -mstorem-bug. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2559 138bc75d-0d04-0410-961f-82ee72b054a4
* (call, call_value): Don't use call_operand, since checking forkenner1992-10-141-2/+8
| | | | | | | recursive calls at this point is not safe. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2458 138bc75d-0d04-0410-961f-82ee72b054a4
* (call, call_value): Don't use call_operand, since checking forkenner1992-10-141-5/+5
| | | | | | | | | | | recursive calls at this point is not safe. (const_16_operand, const_24_operand, gpc_reg_or_immediate_operand): Fix typo in declaration of MODE. (and_operand, add_operand): Likwise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2457 138bc75d-0d04-0410-961f-82ee72b054a4
* Use GEN_INT when appropriate.kenner1992-10-131-370/+527
| | | | | | | | | | | | | | | | | | | | | | | | | (define_attr type): New types for SQRT. (call patterns): Use SCRATCH for LR0. Use new predicate call_operand so that some integers can be used as addresses; fix CALLI so it doesn't accept constant. (EXBYTE, EXTHW, INBYTE, INHW): Use ZERO_EXTEND instead of AND when combine will make it. Use PSImode for BP value and don't reference BP explicitly. Clean up define_expands for these operations. (rotlsi3): Use PSImode pseudo for FC. (sign_extend): Sign extension insns clobber BP. ({load,store}_multiple): Use PSImode pseudo for CR. (MTSR): Add pattern for TRUNCATE from SImode to PSImode. (sqrtsf2, sqrtdf2, movpsi): New patterns. (load/store bytes/halfword): Clean up to accept temporaries as input and use PSImode when required. (movhi, movqi): Allocate temporaries here. (reload_inqi, reload_outqi, reload_inhi, reload_outhi): New patterns. (movdf, movdi, movti): Use SCRATCH for BP register. (reload_{in,out}{df,di,ti}): New patterns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2445 138bc75d-0d04-0410-961f-82ee72b054a4