public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 0/7] [ARC] Fix constraint letters and allow extra registers
@ 2017-04-14 12:17 Claudiu Zissulescu
  2017-04-14 12:19 ` [PATCH 2/7] [ARC] Differentiate between ARCv1 and ARCv2 'h'-reg class for ADD insns Claudiu Zissulescu
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Claudiu Zissulescu @ 2017-04-14 12:17 UTC (permalink / raw)
  To: gcc-patches; +Cc: Claudiu.Zissulescu, Francois.Bedard, andrew.burgess

From: claziss <claziss@synopsys.com>

Hi,

There is an issue with 'h'- register class for ARCv2, which accepts
only the first 32 general purposes registers as oposite to the ARCv1
which accepts all 64 GPRs. Fix this issue in two patches for CMP and
ADD instructions.

Also, allow the compiler to use extra GPRs if they are available and
mark D0, D1 registers fixed when not available.

Fix also C++ calling multiple inheritances when compiling for PIC, and
allow addresses to use Rx + @symbol.

--

Claudiu Zissulescu (7):
  [ARC] Differentiate between ARCv1 and ARCv2 'h'-reg class for CMP
    insns.
  [ARC] Differentiate between ARCv1 and ARCv2 'h'-reg class for ADD
    insns.
  [ARC] Allow extension core registers to be used for addresses.
  [ARC] Make D0, D1 double regs fix when not used.
  [ARC] Use ACCL, ACCH registers whenever they are available.
  [ARC] [Cxx] Fix calling multiple inheritances.
  [ARC] Addresses can use long immediate for offsets.

 gcc/config/arc/arc.c         | 124 +++++++++++++++++++++++++++++++++----------
 gcc/config/arc/arc.h         |  20 ++++---
 gcc/config/arc/arc.md        |  28 +++++-----
 gcc/config/arc/predicates.md |  13 +++++
 4 files changed, 135 insertions(+), 50 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2017-04-25 12:07 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-14 12:17 [PATCH 0/7] [ARC] Fix constraint letters and allow extra registers Claudiu Zissulescu
2017-04-14 12:19 ` [PATCH 2/7] [ARC] Differentiate between ARCv1 and ARCv2 'h'-reg class for ADD insns Claudiu Zissulescu
2017-04-14 12:19 ` [PATCH 4/7] [ARC] Make D0, D1 double regs fix when not used Claudiu Zissulescu
2017-04-14 12:19 ` [PATCH 1/7] [ARC] Differentiate between ARCv1 and ARCv2 'h'-reg class for CMP insns Claudiu Zissulescu
2017-04-14 12:20 ` [PATCH 3/7] [ARC] Allow extension core registers to be used for addresses Claudiu Zissulescu
2017-04-14 12:20 ` [PATCH 7/7] [ARC] Addresses can use long immediate for offsets Claudiu Zissulescu
2017-04-14 12:20 ` [PATCH 5/7] [ARC] Use ACCL, ACCH registers whenever they are available Claudiu Zissulescu
2017-04-14 12:45 ` [PATCH 6/7] [ARC] [Cxx] Fix calling multiple inheritances Claudiu Zissulescu
2017-04-24 19:07 ` [PATCH 0/7] [ARC] Fix constraint letters and allow extra registers Andrew Burgess
2017-04-25 12:29   ` Claudiu Zissulescu

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).