ChangeLog/
	* config/i386/bmiintrin.h (_bextr_u32): New.
	(_bextr_u64): Ditto.
	(_blsi_u32): New.
	(_blsi_u64): Ditto.
	(_blsr_u32): Ditto.
	(_blsr_u64): Ditto.
	(_blsmsk_u32): Ditto.
	(_blsmsk_u64): Ditto.
	(_tzcnt_u32): Ditto.
	(_tzcnt_u64): Ditto.

testsuite/ChangeLog/
	* gcc.target/i386/bmi-1.c: Extend with new instrinsics.
	Fix scan patterns.
	* gcc.target/i386/bmi-2.c: Ditto.
	* gcc.target/i386/bmi-bextr-4.c: New.
	* gcc.target/i386/bmi-bextr-5.c: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201047 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	Backport from 2013-07-19 trunk r201051.
	PR target/57516
	* config/avr/avr-fixed.md (round<mode>3_const): Turn expander to insn.
	* config/avr/avr.md (adjust_len): Add `round'.
	* config/avr/avr-protos.h (avr_out_round): New prototype.
	(avr_out_plus): Add `out_label' argument.
	* config/avr/avr.c (avr_out_plus_1): Add `out_label' argument.
	(avr_out_plus): Pass down `out_label' to avr_out_plus_1.
	Handle the case where `insn' is just a pattern.
	(avr_out_bitop): Handle the case where `insn' is just a pattern.
	(avr_out_round): New function.
	(avr_adjust_insn_length): Handle ADJUST_LEN_ROUND.

libgcc/
	Backport from 2013-07-19 trunk r201051.
	PR target/57516
	* config/avr/lib1funcs-fixed.S (__roundqq3, __rounduqq3)
	(__round_s2_const, __round_u2_const)
	(__round_s4_const, __round_u4_const, __round_x8):
	Saturate result if addition result cannot be represented.

gcc/testsuite/
	Backport from 2013-07-19 trunk r201051.
	PR target/57516
	* gcc.target/avr/torture/builtins-4-roundfx.c (test2hr, test2k):
	Adjust to corrected rounding.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201052 138bc75d-0d04-0410-961f-82ee72b054a4
2013-07-19 Wei Mi  <wmi@google.com>

	Backport from mainline:
gcc/
	2013-07-18  Vladimir Makarov  <vmakarov@redhat.com>
		    Wei Mi  <wmi@google.com>

	PR rtl-optimization/57878
	* lra-assigns.c (assign_by_spills): Move non_reload_pseudos to the
	top. Promote lra_assert to gcc_assert.
	(reload_pseudo_compare_func): Check regs first for reload pseudos.

gcc/testsuite/
	2013-07-18  Wei Mi  <wmi@google.com>

	PR rtl-optimization/57878
	* g++.dg/pr57518.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201068 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201077 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201089 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201115 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/

	Backport from mainline:
	2013-07-22  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (nonlocal_goto_receiver): Delete insn if
	it is not needed after split.

	2013-07-20  Iain Sandoe  <iain@codesourcery.com>

	PR target/51784
	* config/i386/i386.c (output_set_got) [TARGET_MACHO]: Adjust to emit a
	second label for nonlocal goto receivers. Don't output pic base labels
	unless we're producing PIC; mark that action unreachable().
	(ix86_save_reg): If the function contains a nonlocal label, save the
	PIC base reg.
	* config/darwin-protos.h (machopic_should_output_picbase_label): New.
	* gcc/config/darwin.c (emitted_pic_label_num): New GTY. 
	(update_pic_label_number_if_needed): New.
	(machopic_output_function_base_name): Adjust for nonlocal receiver
	case.
	(machopic_should_output_picbase_label): New.
	* config/i386/i386.md (enum unspecv): UNSPECV_NLGR: New.
	(nonlocal_goto_receiver): New insn and split.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201120 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201151 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Ignore SIGPROF if not on a Go thread.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201155 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Support cgo callbacks from threads started by C.

This adjusts the extram support to work with gccgo.  There are
some corresponding changes to cgo in
https://codereview.appspot.com/11406047/ .


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201180 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Declare epoll_create1 if necessary.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201182 138bc75d-0d04-0410-961f-82ee72b054a4
net: Remove Solaris-specific version of listenerSockaddr.

Solaris will use the version in sock_unix.go.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201184 138bc75d-0d04-0410-961f-82ee72b054a4
log/syslog: Restore interface to make this work on Solaris again.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201189 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201198 138bc75d-0d04-0410-961f-82ee72b054a4
net/http: Don't try to trace sendfile64 on alpha.

From Uros Bizjak.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201207 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Move new 1.1.1 functions from thread-linux.c to runtime.c.

This way they are compiled on non-GNU/Linux systems.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201210 138bc75d-0d04-0410-961f-82ee72b054a4
net: Only use GNU/Linux unix socket abstract paths on GNU/Linux.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201218 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Check _end rather than end to find end of program.

This fixes a problem on Solaris, where end is not defined in
the main program but comes from some shared library.  This
only matters for 32-bit targets.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201221 138bc75d-0d04-0410-961f-82ee72b054a4
	* go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
	fields, recreate those fields with the first one with a non-zero
	size.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201223 138bc75d-0d04-0410-961f-82ee72b054a4
runtime: Handle allocating memory in cgo/SWIG function.

A function that returns an interface type and returns a value
that requires memory allocation will try to allocate while
appearing to be in a syscall.  This patch lets that work.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@201227 138bc75d-0d04-0410-961f-82ee72b054a4