public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: David Daney <ddaney@avtrex.com>
To: Omar <gcc.omar@gmail.com>
Cc: gcc-help@gcc.gnu.org
Subject: Re: error: missing terminating " character while modifying md file
Date: Sat, 10 May 2008 00:10:00 -0000	[thread overview]
Message-ID: <4824E65D.8010802@avtrex.com> (raw)
In-Reply-To: <178adb870805091651s16cb5417q98ed2a32c191eb10@mail.gmail.com>

Omar wrote:
>  Ok, so after weeks of reading and looking at multiple .md files, I
> felt ready to give it a try and decided to create some define_split's
> on my own.
>  I created a define_split RTL pattern which included this condition:
>   "reload_completed
>   && GET_CODE (operands[1]) == MEM
>   && GET_CODE (XEXP (operands[1], 0)) == PLUS"
> 
> When I try to compile it I get:
> ../../gcc/config/c816/c816.md:36  error: missing terminating " character
> ../../gcc/config/c816/c816.md:37: error: stray '\' in program
> ...
> 
> If instead, I place the condition all in a single line:
>   "reload_completed && GET_CODE (operands[1]) == MEM && GET_CODE (XEXP
> (operands[1], 0)) == PLUS"
> then gcc is happy.
> 
> I have been searching the web for hours now, but I have not been able
> to find what is causing this.
> Does anyone have a suggestion on what might be causing this issue?
> 

It has to be a valid C string.  You get that error for the same reason 
that you get it from this program:

----------->8---------
int f(const char *p);


int j(void)
{
     return f("hello
world");

}
----------->8---------

If the condition is complex, create a macro for it in your target.h file 
and use the macro in the .md file.

This is done in mips.h (see GENERATE_LL_SC) as well as I imagine other 
places if you want an example.

David Daney

  reply	other threads:[~2008-05-10  0:04 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-10  0:04 Omar
2008-05-10  0:10 ` David Daney [this message]
2008-05-10  1:09   ` David Daney
2008-05-10  8:00     ` Omar
2008-05-13  1:52       ` Omar Torres
2008-05-13  3:25         ` Tim Prince
2008-05-13  4:10           ` Omar Torres

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=4824E65D.8010802@avtrex.com \
    --to=ddaney@avtrex.com \
    --cc=gcc-help@gcc.gnu.org \
    --cc=gcc.omar@gmail.com \
    /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).