mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			i386.c (ix86_md_asm_adjust): Handle DImode dest_mode for !TARGET_64BIT.
* config/i386/i386.c (ix86_md_asm_adjust): Handle DImode dest_mode for !TARGET_64BIT. testsuite/ChangeLog: * gcc.target/i386/asm-flag-5.c (f_ll): New. From-SVN: r226017
This commit is contained in:
		
							parent
							
								
									236d2dc4b8
								
							
						
					
					
						commit
						73c581fbd1
					
				|  | @ -1,3 +1,8 @@ | ||||||
|  | 2015-07-20  Uros Bizjak  <ubizjak@gmail.com> | ||||||
|  | 
 | ||||||
|  | 	* config/i386/i386.c (ix86_md_asm_adjust): Handle DImode dest_mode | ||||||
|  | 	for !TARGET_64BIT. | ||||||
|  | 
 | ||||||
| 2015-07-20  Aditya Kumar  <hiraditya@msn.com> | 2015-07-20  Aditya Kumar  <hiraditya@msn.com> | ||||||
| 
 | 
 | ||||||
| 	* graphite-isl-ast-to-gimple.c: | 	* graphite-isl-ast-to-gimple.c: | ||||||
|  |  | ||||||
|  | @ -45861,6 +45861,10 @@ ix86_md_asm_adjust (vec<rtx> &outputs, vec<rtx> &/*inputs*/, | ||||||
| 	  error ("invalid type for asm flag output"); | 	  error ("invalid type for asm flag output"); | ||||||
| 	  continue; | 	  continue; | ||||||
| 	} | 	} | ||||||
|  | 
 | ||||||
|  |       if (dest_mode == DImode && !TARGET_64BIT) | ||||||
|  | 	dest_mode = SImode; | ||||||
|  | 
 | ||||||
|       if (dest_mode != QImode) |       if (dest_mode != QImode) | ||||||
| 	{ | 	{ | ||||||
| 	  rtx destqi = gen_reg_rtx (QImode); | 	  rtx destqi = gen_reg_rtx (QImode); | ||||||
|  | @ -45877,7 +45881,16 @@ ix86_md_asm_adjust (vec<rtx> &outputs, vec<rtx> &/*inputs*/, | ||||||
| 	  else | 	  else | ||||||
| 	    x = gen_rtx_ZERO_EXTEND (dest_mode, destqi); | 	    x = gen_rtx_ZERO_EXTEND (dest_mode, destqi); | ||||||
| 	} | 	} | ||||||
|       emit_insn (gen_rtx_SET (dest, x)); | 
 | ||||||
|  |       if (dest_mode != GET_MODE (dest)) | ||||||
|  | 	{ | ||||||
|  | 	  rtx tmp = gen_reg_rtx (SImode); | ||||||
|  | 
 | ||||||
|  | 	  emit_insn (gen_rtx_SET (tmp, x)); | ||||||
|  | 	  emit_insn (gen_zero_extendsidi2 (dest, tmp)); | ||||||
|  | 	} | ||||||
|  |       else | ||||||
|  | 	emit_insn (gen_rtx_SET (dest, x)); | ||||||
|     } |     } | ||||||
|   rtx_insn *seq = get_insns (); |   rtx_insn *seq = get_insns (); | ||||||
|   end_sequence (); |   end_sequence (); | ||||||
|  |  | ||||||
|  | @ -1,6 +1,10 @@ | ||||||
|  | 2015-07-20  Uros Bizjak  <ubizjak@gmail.com> | ||||||
|  | 
 | ||||||
|  | 	* gcc.target/i386/asm-flag-5.c (f_ll): New. | ||||||
|  | 
 | ||||||
| 2015-07-20  Jiong Wang  <jiong.wang@arm.com> | 2015-07-20  Jiong Wang  <jiong.wang@arm.com> | ||||||
| 
 | 
 | ||||||
| 	 * gcc.target/aarch64/got_mem_hoist.c (dg-skip-if): Skip tiny and large | 	* gcc.target/aarch64/got_mem_hoist.c (dg-skip-if): Skip tiny and large | ||||||
| 	model. | 	model. | ||||||
| 
 | 
 | ||||||
| 2015-07-20  Marek Polacek  <polacek@redhat.com> | 2015-07-20  Marek Polacek  <polacek@redhat.com> | ||||||
|  |  | ||||||
|  | @ -7,6 +7,7 @@ void f_c(void) { char x; asm("" : "=@ccc"(x)); } | ||||||
| void f_s(void) { short x; asm("" : "=@ccc"(x)); } | void f_s(void) { short x; asm("" : "=@ccc"(x)); } | ||||||
| void f_i(void) { int x; asm("" : "=@ccc"(x)); } | void f_i(void) { int x; asm("" : "=@ccc"(x)); } | ||||||
| void f_l(void) { long x; asm("" : "=@ccc"(x)); } | void f_l(void) { long x; asm("" : "=@ccc"(x)); } | ||||||
|  | void f_ll(void) { long long x; asm("" : "=@ccc"(x)); } | ||||||
| 
 | 
 | ||||||
| void f_f(void) | void f_f(void) | ||||||
| { | { | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Uros Bizjak
						Uros Bizjak