<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp-clang/utils/TableGen, branch master</title>
<subtitle>emscripten clang</subtitle>
<id>https://git.amat.us/emscripten-fastcomp-clang/atom/utils/TableGen?h=master</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp-clang/atom/utils/TableGen?h=master'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/'/>
<updated>2013-05-05T01:03:47Z</updated>
<entry>
<title>ArrayRef&lt;T&gt;() -&gt; None cleanup</title>
<updated>2013-05-05T01:03:47Z</updated>
<author>
<name>Dmitri Gribenko</name>
<email>gribozavr@gmail.com</email>
</author>
<published>2013-05-05T01:03:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=566bf620e1b52860b641e0feae910d40ce883afc'/>
<id>urn:sha1:566bf620e1b52860b641e0feae910d40ce883afc</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181140 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Restore Richard's belief in me.</title>
<updated>2013-05-03T18:51:59Z</updated>
<author>
<name>Douglas Gregor</name>
<email>dgregor@apple.com</email>
</author>
<published>2013-05-03T18:51:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=4761b102de0defef110d760ff77bfc367eac93c9'/>
<id>urn:sha1:4761b102de0defef110d760ff77bfc367eac93c9</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181042 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use attribute argument information to determine when to parse attribute arguments as expressions.</title>
<updated>2013-05-02T23:25:32Z</updated>
<author>
<name>Douglas Gregor</name>
<email>dgregor@apple.com</email>
</author>
<published>2013-05-02T23:25:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=92eb7d847cb1273a63d5e3b7dc98a7c97a81b703'/>
<id>urn:sha1:92eb7d847cb1273a63d5e3b7dc98a7c97a81b703</id>
<content type='text'>
This change partly addresses a heinous problem we have with the
parsing of attribute arguments that are a lone identifier. Previously,
we would end up parsing the 'align' attribute of this as an expression
"(Align)":

 template&lt;unsigned Size, unsigned Align&gt;
 class my_aligned_storage
 {
   __attribute__((align((Align)))) char storage[Size];
 };

while this would parse as a "parameter name" 'Align':

 template&lt;unsigned Size, unsigned Align&gt;
 class my_aligned_storage
 {
   __attribute__((align(Align))) char storage[Size];
 };

The code that handles the alignment attribute would completely ignore
the parameter name, so the while the first of these would do what's
expected, the second would silently be equivalent to

 template&lt;unsigned Size, unsigned Align&gt;
 class my_aligned_storage
 {
   __attribute__((align)) char storage[Size];
 };

i.e., use the maximal alignment rather than the specified alignment.

Address this by sniffing the "Args" provided in the TableGen
description of attributes. If the first argument is "obviously"
something that should be treated as an expression (rather than an
identifier to be matched later), parse it as an expression.

Fixes &lt;rdar://problem/13700933&gt;.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180973 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Revert r180970; it's causing breakage.</title>
<updated>2013-05-02T23:15:45Z</updated>
<author>
<name>Douglas Gregor</name>
<email>dgregor@apple.com</email>
</author>
<published>2013-05-02T23:15:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=fa5f03052bc39d9c8f2fa8b4002597a8219760a4'/>
<id>urn:sha1:fa5f03052bc39d9c8f2fa8b4002597a8219760a4</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180972 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use attribute argument information to determine when to parse attribute arguments as expressions.</title>
<updated>2013-05-02T23:08:12Z</updated>
<author>
<name>Douglas Gregor</name>
<email>dgregor@apple.com</email>
</author>
<published>2013-05-02T23:08:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=3796d1539a39b999fd50bed7aea726ef6f845e17'/>
<id>urn:sha1:3796d1539a39b999fd50bed7aea726ef6f845e17</id>
<content type='text'>
This change partly addresses a heinous problem we have with the
parsing of attribute arguments that are a lone identifier. Previously,
we would end up parsing the 'align' attribute of this as an expression
"(Align)":

  template&lt;unsigned Size, unsigned Align&gt;
  class my_aligned_storage
  {
    __attribute__((align((Align)))) char storage[Size];
  };

while this would parse as a "parameter name" 'Align':

  template&lt;unsigned Size, unsigned Align&gt;
  class my_aligned_storage
  {
    __attribute__((align(Align))) char storage[Size];
  };

The code that handles the alignment attribute would completely ignore
the parameter name, so the while the first of these would do what's
expected, the second would silently be equivalent to

  template&lt;unsigned Size, unsigned Align&gt;
  class my_aligned_storage
  {
    __attribute__((align)) char storage[Size];
  };

i.e., use the maximal alignment rather than the specified alignment.

Address this by sniffing the "Args" provided in the TableGen
description of attributes. If the first argument is "obviously"
something that should be treated as an expression (rather than an
identifier to be matched later), parse it as an expression.

Fixes &lt;rdar://problem/13700933&gt;.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180970 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[neonemitter tests] Change triple of emitted tests to thumbv7s to match the target cpu being swift. Also specify the target-abi to apcs-gnu.</title>
<updated>2013-04-25T00:10:14Z</updated>
<author>
<name>Michael Gottesman</name>
<email>mgottesman@apple.com</email>
</author>
<published>2013-04-25T00:10:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=c873b51aea82cb7232c86c0012b9f493a62ef003'/>
<id>urn:sha1:c873b51aea82cb7232c86c0012b9f493a62ef003</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180233 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[6/6] ARM Neon Intrinsic Tablegen Test Generator.</title>
<updated>2013-04-16T23:00:26Z</updated>
<author>
<name>Michael Gottesman</name>
<email>mgottesman@apple.com</email>
</author>
<published>2013-04-16T23:00:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=c327f8705ecb8753555822d479f899bd2234386d'/>
<id>urn:sha1:c327f8705ecb8753555822d479f899bd2234386d</id>
<content type='text'>
Added GenerateChecksForIntrinsic method to generate FileCheck patterns
for generated arm neon tests.

Reviewed by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179644 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[5/6] ARM Neon Intrinsic Tablegen Test Generator.</title>
<updated>2013-04-16T22:55:01Z</updated>
<author>
<name>Michael Gottesman</name>
<email>mgottesman@apple.com</email>
</author>
<published>2013-04-16T22:55:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=fb9929ee2a0ed47d473a58b0ba5c7a7a7a095b73'/>
<id>urn:sha1:fb9929ee2a0ed47d473a58b0ba5c7a7a7a095b73</id>
<content type='text'>
Changed the test generation target cpu type from cortex-a9 to swift.

Reviewed by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179642 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[4/6] ARM Neon Intrinsic Tablegen Test Generator.</title>
<updated>2013-04-16T22:48:52Z</updated>
<author>
<name>Michael Gottesman</name>
<email>mgottesman@apple.com</email>
</author>
<published>2013-04-16T22:48:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=7200bd673af6b58d7d2f0c5d048050abe5b8858c'/>
<id>urn:sha1:7200bd673af6b58d7d2f0c5d048050abe5b8858c</id>
<content type='text'>
Added code to NeonEmitter::runTests so that GenTest gets all of the needed
arguments to invoke the neon test generation methods.

Reviewed by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179640 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[3/6] ARM Neon Intrinsic Tablegen Test Generator.</title>
<updated>2013-04-16T22:07:30Z</updated>
<author>
<name>Michael Gottesman</name>
<email>mgottesman@apple.com</email>
</author>
<published>2013-04-16T22:07:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=fb599a4cc5665afe8da11d438ae021a5cd8cfdbd'/>
<id>urn:sha1:fb599a4cc5665afe8da11d438ae021a5cd8cfdbd</id>
<content type='text'>
Refactored out the method InstructionTypeCode from MangleName for use in
further patches which perform neon tablegen test generation.

Reviewed by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179636 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
