<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp-clang/include/clang/Basic, branch master</title>
<subtitle>emscripten clang</subtitle>
<id>https://git.amat.us/emscripten-fastcomp-clang/atom/include/clang/Basic?h=master</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp-clang/atom/include/clang/Basic?h=master'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/'/>
<updated>2014-04-25T23:00:38Z</updated>
<entry>
<title>Don't align member functions.</title>
<updated>2014-04-25T23:00:38Z</updated>
<author>
<name>Dan Gohman</name>
<email>sunfish@mozilla.com</email>
</author>
<published>2014-04-25T23:00:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=364355da26053c321180fa31ecd731d36c4cffae'/>
<id>urn:sha1:364355da26053c321180fa31ecd731d36c4cffae</id>
<content type='text'>
Emscripten uses the ARM ABI for pointers to member functions and doesn't
require that member functions are aligned.
</content>
</entry>
<entry>
<title>Introduce an Emscripten C++ ABI.</title>
<updated>2014-04-25T22:51:06Z</updated>
<author>
<name>Dan Gohman</name>
<email>sunfish@mozilla.com</email>
</author>
<published>2014-04-25T22:51:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=ad32fdb927a37dba26cb8b56f3a6b11667fe6584'/>
<id>urn:sha1:ad32fdb927a37dba26cb8b56f3a6b11667fe6584</id>
<content type='text'>
Emscripten uses the Itanium C++ ABI for most things, except that it uses
ARM C++ ABI pointers to member functions, to avoid the overhead of aligning
functions.
</content>
</entry>
<entry>
<title>Add the __nacl_atomic_is_lock_free builtin</title>
<updated>2013-08-01T22:05:44Z</updated>
<author>
<name>JF Bastien</name>
<email>jfb@chromium.org</email>
</author>
<published>2013-08-01T22:05:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=e801395572ecfeb5ba913c4064944ed7fac3e806'/>
<id>urn:sha1:e801395572ecfeb5ba913c4064944ed7fac3e806</id>
<content type='text'>
This is part of a bigger CL to fix C++11 in PNaCl, to commit in the following order:
 - https://codereview.chromium.org/20552002
 - https://codereview.chromium.org/20554002
 - https://codereview.chromium.org/20560002
 - https://codereview.chromium.org/20561002

This change is needed in Clang so that it can recognize the builtin and translate it to the intrinsic that 20554002 adds.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3475
TEST= ./scons run_synchronization_cpp11_test --verbose bitcode=1 platform=x86-64
R=dschuff@chromium.org

Review URL: https://codereview.chromium.org/20552002
</content>
</entry>
<entry>
<title>Reverting r182337, which merged r182266, __declspec(selectany)</title>
<updated>2013-05-21T13:48:39Z</updated>
<author>
<name>Reid Kleckner</name>
<email>reid@kleckner.net</email>
</author>
<published>2013-05-21T13:48:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=52195b74d01520b6bce0f8c08234bf6eb8cfd496'/>
<id>urn:sha1:52195b74d01520b6bce0f8c08234bf6eb8cfd496</id>
<content type='text'>
Was "Implement __declspec(selectany) under -fms-extensions ..."


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_33@182381 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Merging r181487:</title>
<updated>2013-05-21T00:22:29Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2013-05-21T00:22:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=ef98ec8ac0f8d370b0a96ffdc9805adae3f152a8'/>
<id>urn:sha1:ef98ec8ac0f8d370b0a96ffdc9805adae3f152a8</id>
<content type='text'>
------------------------------------------------------------------------
r181487 | fjahanian | 2013-05-08 16:38:56 -0700 (Wed, 08 May 2013) | 4 lines

put noisy "unknown command tag name"  warning
under -Wdocumentation-unknown-command and off by default.
patch by Dmitri Gribenko.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_33@182338 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Merging r182266:</title>
<updated>2013-05-21T00:06:11Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2013-05-21T00:06:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=1cac0481166dd383a5d685fd53154661fbac5896'/>
<id>urn:sha1:1cac0481166dd383a5d685fd53154661fbac5896</id>
<content type='text'>
------------------------------------------------------------------------
r182266 | rnk | 2013-05-20 07:02:37 -0700 (Mon, 20 May 2013) | 13 lines

Implement __declspec(selectany) under -fms-extensions

selectany only applies to externally visible global variables.  It has
the effect of making the data weak_odr.

The MSDN docs suggest that unused definitions can only be dropped at
linktime, so Clang uses weak instead of linkonce.  MSVC optimizes away
references to constant selectany data, so it must assume that there is
only one definition, hence weak_odr.

Reviewers: espindola

Differential Revision: http://llvm-reviews.chandlerc.com/D814
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_33@182337 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Grab-bag of bit-field fixes:</title>
<updated>2013-05-06T21:39:12Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-05-06T21:39:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=993f43f24d7a45a5cd4678a3316b0852261fc5d4'/>
<id>urn:sha1:993f43f24d7a45a5cd4678a3316b0852261fc5d4</id>
<content type='text'>
  - References to ObjC bit-field ivars are bit-field lvalues;
    fixes rdar://13794269, which got me started down this.
  - Introduce Expr::refersToBitField, switch a couple users to
    it where semantically important, and comment the difference
    between this and the existing API.
  - Discourage Expr::getBitField by making it a bit longer and
    less general-sounding.
  - Lock down on const_casts of bit-field gl-values until we
    hear back from the committee as to whether they're allowed.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181252 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Move PragmaCommentHandler to lib/Parse in preparation for calling Sema</title>
<updated>2013-05-06T21:02:12Z</updated>
<author>
<name>Reid Kleckner</name>
<email>reid@kleckner.net</email>
</author>
<published>2013-05-06T21:02:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=7adf79a620cb7fbde0608e21727425930676b7db'/>
<id>urn:sha1:7adf79a620cb7fbde0608e21727425930676b7db</id>
<content type='text'>
Summary:
No functionality change.  The existing tests for this pragma only verify
that we can preprocess it.

Reviewers: rsmith

CC: cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D751

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181246 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add SystemZ support</title>
<updated>2013-05-06T16:26:41Z</updated>
<author>
<name>Ulrich Weigand</name>
<email>ulrich.weigand@de.ibm.com</email>
</author>
<published>2013-05-06T16:26:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=b8409215523e5478b8b0aa9cdcd10038cf7651fe'/>
<id>urn:sha1:b8409215523e5478b8b0aa9cdcd10038cf7651fe</id>
<content type='text'>
This patch then adds all the usual platform-specific pieces for SystemZ:
driver support, basic target info, register names and constraints,
ABI info and vararg support.  It also adds new tests to verify pre-defined
macros and inline asm, and updates a test for the minimum alignment change.

This version of the patch incorporates feedback from reviews by
Eric Christopher and John McCall.  Thanks to all reviewers!

Patch by Richard Sandiford.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181211 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Allow targets to define minimum alignment for global variables</title>
<updated>2013-05-06T16:23:57Z</updated>
<author>
<name>Ulrich Weigand</name>
<email>ulrich.weigand@de.ibm.com</email>
</author>
<published>2013-05-06T16:23:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=6b20351a1d6178addfaa86716aaba36f2e9ea188'/>
<id>urn:sha1:6b20351a1d6178addfaa86716aaba36f2e9ea188</id>
<content type='text'>
This patch adds a new common code feature that allows platform code to
request minimum alignment of global symbols.  The background for this is
that on SystemZ, the most efficient way to load addresses of global symbol
is the LOAD ADDRESS RELATIVE LONG (LARL) instruction.  This instruction
provides PC-relative addressing, but only to *even* addresses.  For this
reason, existing compilers will guarantee that global symbols are always
aligned to at least 2.  [ Since symbols would otherwise already use a
default alignment based on their type, this will usually only affect global
objects of character type or character arrays. ]  GCC also allows creating
symbols without that extra alignment by using explicit "aligned" attributes
(which then need to be used on both definition and each use of the symbol).

To enable support for this with Clang, this patch adds a
TargetInfo::MinGlobalAlign variable that provides a global minimum for the
alignment of every global object (unless overridden via explicit alignment
attribute), and adds code to respect this setting.  Within this patch, no
platform actually sets the value to anything but the default 1, resulting
in no change in behaviour on any existing target.

This version of the patch incorporates feedback from reviews by
Eric Christopher and John McCall.  Thanks to all reviewers!

Patch by Richard Sandiford.



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