<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/rustllvm/RustWrapper.cpp, branch 1.32.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.32.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.32.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-12-03T11:59:11+00:00</updated>
<entry>
<title>Auto merge of #55010 - tromey:Bug-9224-generic-parameters, r=michaelwoerister</title>
<updated>2018-12-03T11:59:11+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-12-03T11:59:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9cd3bef4cfaaac2a608682d4b0834cda344249e0'/>
<id>urn:sha1:9cd3bef4cfaaac2a608682d4b0834cda344249e0</id>
<content type='text'>
Add template parameter debuginfo to generic types

This changes debuginfo generation to add template parameters to
generic types.  With this change the DWARF now has
DW_TAG_template_type_param for types, not just for functions, like:

 &lt;2&gt;&lt;40d&gt;: Abbrev Number: 6 (DW_TAG_structure_type)
    &lt;40e&gt;   DW_AT_name        : (indirect string, offset: 0x375): Generic&lt;i32&gt;
    &lt;412&gt;   DW_AT_byte_size   : 4
    &lt;413&gt;   DW_AT_alignment   : 4
...
 &lt;3&gt;&lt;41f&gt;: Abbrev Number: 8 (DW_TAG_template_type_param)
    &lt;420&gt;   DW_AT_type        : &lt;0x42a&gt;
    &lt;424&gt;   DW_AT_name        : (indirect string, offset: 0xa65e): T

Closes #9224
</content>
</entry>
<entry>
<title>Enable -mergefunc-use-aliases</title>
<updated>2018-11-29T23:52:16+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-29T22:05:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cbf748993f59682f60dfe620eafea24124f737fb'/>
<id>urn:sha1:cbf748993f59682f60dfe620eafea24124f737fb</id>
<content type='text'>
If the Rust LLVM fork is used, enable the -mergefunc-use-aliases
flag, which will create aliases for merged functions, rather than
inserting a call from one to the other.

A number of codegen tests needed to be adjusted, because functions
that previously fell below the thunk limit are now being merged.
Merging is prevented either using -C no-prepopulate-passes, or by
making the functions non-identical.

I expect that this is going to break something, somewhere, because
it isn't able to deal with aliases properly, but we won't find out
until we try :)

This fixes #52651.
</content>
</entry>
<entry>
<title>Add template parameter debuginfo to generic types</title>
<updated>2018-11-29T20:04:09+00:00</updated>
<author>
<name>Tom Tromey</name>
<email>tom@tromey.com</email>
</author>
<published>2018-10-12T13:34:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fb204cb92f5da2cd0b630ee4b6be85b02404823e'/>
<id>urn:sha1:fb204cb92f5da2cd0b630ee4b6be85b02404823e</id>
<content type='text'>
This changes debuginfo generation to add template parameters to
generic types.  With this change the DWARF now has
DW_TAG_template_type_param for types, not just for functions, like:

 &lt;2&gt;&lt;40d&gt;: Abbrev Number: 6 (DW_TAG_structure_type)
    &lt;40e&gt;   DW_AT_name        : (indirect string, offset: 0x375): Generic&lt;i32&gt;
    &lt;412&gt;   DW_AT_byte_size   : 4
    &lt;413&gt;   DW_AT_alignment   : 4
...
 &lt;3&gt;&lt;41f&gt;: Abbrev Number: 8 (DW_TAG_template_type_param)
    &lt;420&gt;   DW_AT_type        : &lt;0x42a&gt;
    &lt;424&gt;   DW_AT_name        : (indirect string, offset: 0xa65e): T

Closes #9224
</content>
</entry>
<entry>
<title>Conditionally compile in only the extra argument.</title>
<updated>2018-11-26T04:27:18+00:00</updated>
<author>
<name>Edd Barrett</name>
<email>vext01@gmail.com</email>
</author>
<published>2018-11-07T12:34:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bf01bcb451d20d770091acb5cde4a024d91a0740'/>
<id>urn:sha1:bf01bcb451d20d770091acb5cde4a024d91a0740</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make Rustc build with LLVM trunk.</title>
<updated>2018-11-26T04:27:18+00:00</updated>
<author>
<name>Edd Barrett</name>
<email>vext01@gmail.com</email>
</author>
<published>2018-11-07T12:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a43a7a07785fdaca7c04ae2ba2f29512dcca58f4'/>
<id>urn:sha1:a43a7a07785fdaca7c04ae2ba2f29512dcca58f4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #55698 - nikic:remove-llvm-4-support, r=alexcrichton</title>
<updated>2018-11-11T22:38:54+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-11-11T22:38:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=775eab58835f9bc0f1f01ccbb79725dce0c73b51'/>
<id>urn:sha1:775eab58835f9bc0f1f01ccbb79725dce0c73b51</id>
<content type='text'>
Remove support for building against LLVM 4

With emscripten removed in #55626, we no longer need to support building against LLVM 4.
</content>
</entry>
<entry>
<title>Rollup merge of #55633 - nikic:memcpy-align, r=nagisa</title>
<updated>2018-11-09T01:14:49+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2018-11-09T01:14:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=78cab361394c6cdb9ab950ff094bcc5e0635ce86'/>
<id>urn:sha1:78cab361394c6cdb9ab950ff094bcc5e0635ce86</id>
<content type='text'>
Support memcpy/memmove with differing src/dst alignment

If LLVM 7 is used, generate memcpy/memmove with differing src/dst alignment. I've added new FFI functions to construct these through the builder API, which is more convenient than dealing with differing intrinsic signatures depending on the LLVM version.

Fixes #49740.
</content>
</entry>
<entry>
<title>Remove support for building against LLVM 4</title>
<updated>2018-11-05T14:04:26+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-05T13:52:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3cc8b17451aac4a144baa48bb48f4187a5529769'/>
<id>urn:sha1:3cc8b17451aac4a144baa48bb48f4187a5529769</id>
<content type='text'>
With emscripten removed in #55626, we no longer need to support
building against LLVM 4.
</content>
</entry>
<entry>
<title>Support memcpy/memmove with differing src/dst alignment</title>
<updated>2018-11-04T17:54:37+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-02T22:38:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=463ad9098e12d1fbcfec2125d0ebfc6467866e38'/>
<id>urn:sha1:463ad9098e12d1fbcfec2125d0ebfc6467866e38</id>
<content type='text'>
If LLVM 7 is used, generate memcpy/memmove with differing
src/dst alignment. I've added new FFI functions to construct
these through the builder API, which is more convenient than
dealing with differing intrinsic signatures depending on the
LLVM version.
</content>
</entry>
<entry>
<title>Remove checks for LLVM &lt; 4.0</title>
<updated>2018-11-01T20:09:02+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-01T20:06:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d79459769832c5c1724ce1e7e7099edb945b1467'/>
<id>urn:sha1:d79459769832c5c1724ce1e7e7099edb945b1467</id>
<content type='text'>
While we still have to support LLVM 4.0 for Emscripten, we can
drop checks for LLVM &gt;= 4.0 and &lt; 4.0.
</content>
</entry>
</feed>
