From: Andrew Burgess <andrew.burgess@embecosm.com>
To: Claudiu Zissulescu <Claudiu.Zissulescu@synopsys.com>
Cc: gcc-patches@gcc.gnu.org, Francois.Bedard@synopsys.com
Subject: Re: [PATCH 5/5] [ARC] Clear the instruction cache using syscalls.
Date: Fri, 27 Apr 2018 21:44:00 -0000 [thread overview]
Message-ID: <20180427214017.GE3375@embecosm.com> (raw)
In-Reply-To: <1523005214-1611-6-git-send-email-claziss@synopsys.com>
* Claudiu Zissulescu <Claudiu.Zissulescu@synopsys.com> [2018-04-06 11:00:14 +0200]:
> Clear the instruction cache from `beg' to `end'. This makes an inline
> system call to SYS_cacheflush.
>
> gcc/
> 2017-03-28 Claudiu Zissulescu <claziss@synopsys.com>
>
> * config/arc/linux.h (CLEAR_INSN_CACHE): Define.
Looks good.
Thanks,
Andrew
> ---
> gcc/config/arc/linux.h | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/gcc/config/arc/linux.h b/gcc/config/arc/linux.h
> index 4e87dfe..96d548e 100644
> --- a/gcc/config/arc/linux.h
> +++ b/gcc/config/arc/linux.h
> @@ -109,3 +109,17 @@ along with GCC; see the file COPYING3. If not see
> /* Build attribute: procedure call standard. */
> #undef ATTRIBUTE_PCS
> #define ATTRIBUTE_PCS 3
> +
> +/* Clear the instruction cache from `beg' to `end'. This makes an
> + inline system call to SYS_cacheflush. */
> +#undef CLEAR_INSN_CACHE
> +#define CLEAR_INSN_CACHE(beg, end) \
> +{ \
> + register unsigned long _beg __asm ("r0") = (unsigned long) (beg); \
> + register unsigned long _end __asm ("r1") = (unsigned long) (end); \
> + register unsigned long _xtr __asm ("r2") = 0; \
> + register unsigned long _scno __asm ("r8") = 244; \
> + __asm __volatile ("trap_s 0 ; sys_cache_sync" \
> + : "=r" (_beg) \
> + : "0" (_beg), "r" (_end), "r" (_xtr), "r" (_scno)); \
> +}
> --
> 1.9.1
>
next prev parent reply other threads:[~2018-04-27 21:40 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-06 9:00 [PATCH 0/5] [ARC] General fixes Claudiu Zissulescu
2018-04-06 9:00 ` [PATCH 5/5] [ARC] Clear the instruction cache using syscalls Claudiu Zissulescu
2018-04-27 21:44 ` Andrew Burgess [this message]
2018-04-30 13:34 ` Claudiu Zissulescu
2018-04-06 9:00 ` [PATCH 3/5] [ARC] Update movhi and movdi patterns Claudiu Zissulescu
2018-04-27 21:39 ` Andrew Burgess
2018-04-30 13:17 ` Claudiu Zissulescu
2018-04-06 9:00 ` [PATCH 4/5] [ARC] Cleanup sdata handling Claudiu Zissulescu
2018-04-27 21:40 ` Andrew Burgess
2018-04-30 13:18 ` Claudiu Zissulescu
2018-04-06 9:00 ` [PATCH 2/5] [ARC] Fix FLS, SETI patterns Claudiu Zissulescu
2018-04-18 17:57 ` Andrew Burgess
2018-04-23 10:34 ` Claudiu Zissulescu
2018-04-06 9:00 ` [PATCH 1/5] [ARC] Update sleep builtin Claudiu Zissulescu
2018-04-18 17:51 ` Andrew Burgess
2018-04-23 9:57 ` Claudiu Zissulescu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180427214017.GE3375@embecosm.com \
--to=andrew.burgess@embecosm.com \
--cc=Claudiu.Zissulescu@synopsys.com \
--cc=Francois.Bedard@synopsys.com \
--cc=gcc-patches@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).