Commit 7c80a459 by Szabolcs Nagy Committed by Szabolcs Nagy

[AArch64] Handle iterator definitions with conditionals in geniterator.sh

gcc/
2016-06-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* config/aarch64/geniterators.sh: Handle parenthesised conditions.

From-SVN: r237548
parent 0c4b9765
2016-06-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/aarch64/geniterators.sh: Handle parenthesised conditions.
2016-06-16 John David Anglin <danglin@gcc.gnu.org>
* config/pa/pa.c (pa_output_pic_pcrel_sequence): New.
......
......@@ -23,10 +23,7 @@
# BUILTIN_<ITERATOR> macros, which expand to VAR<N> Macros covering the
# same set of modes as the iterator in iterators.md
#
# Find the <ITERATOR> definitions (may span several lines), skip the ones
# which does not have a simple format because it contains characters we
# don't want to or can't handle (e.g P, PTR iterators change depending on
# Pmode and ptr_mode).
# Find the <ITERATOR> definitions (may span several lines).
LC_ALL=C awk '
BEGIN {
print "/* -*- buffer-read-only: t -*- */"
......@@ -49,12 +46,24 @@ iterdef {
sub(/.*\(define_mode_iterator/, "", s)
}
iterdef && s ~ /\)/ {
iterdef {
# Count the parentheses, the iterator definition ends
# if there are more closing ones than opening ones.
nopen = gsub(/\(/, "(", s)
nclose = gsub(/\)/, ")", s)
if (nopen >= nclose)
next
iterdef = 0
gsub(/[ \t]+/, " ", s)
sub(/ *\).*/, "", s)
sub(/ *\)[^)]*$/, "", s)
sub(/^ /, "", s)
# Drop the conditions.
gsub(/ *"[^"]*" *\)/, "", s)
gsub(/\( */, "", s)
if (s !~ /^[A-Za-z0-9_]+ \[[A-Z0-9 ]*\]$/)
next
sub(/\[ */, "", s)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment