Files
binutils-gdb/ld/testsuite/ld-scripts
Alan Modra 27cdfa03b5 m32c padding with nops
m32c_md_end attempted to pad out a code section with nops, but this
was just plain wrong in many ways:
- The padding didn't happen at all if the last section emitted wasn't
  a code section.
- The padding went to the wrong place if subsections were used, and
  the last subseg used wasn't the highest numbered subseg.
- Padding wasn't added to all code sections.
- If the last section was empty, it was padded to 4 bytes.
- The padding didn't go to a 4-byte alignment boundary, instead it
  effectively made the last instruction 4 bytes in size.
- The padding didn't take into account that code sections may have
  contents other than machine instructions.

So, rip it out and handle nop padding properly, also fixing .align
.balign/.p2align in the middle of code.

gas/
	* config/tc-m32c.c (insn_size): Delete static var.
	(md_begin): Don't set it.
	(m32c_md_end): Delete.
	(md_assemble): Add insn_size auto var.
	* config/tc-m32c.h (md_end): Don't define.
	(m32c_md_end): Delete.
	(NOP_OPCODE, HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): Define.
	* testsuite/gas/all/align.d: Remove m32c from notarget list.
	* testsuite/gas/all/incbin.d: Likewise.
	* testsuite/gas/elf/dwarf2-11.d: Likewise.
	* testsuite/gas/macros/semi.d: Likewise.
	* testsuite/gas/all/gas.exp (do_comment): Similarly.
ld/
	* testsuite/ld-scripts/fill.d: Don't xfail m32c
	* testsuite/ld-scripts/fill16.d: Likewise.
2019-05-04 17:23:18 +09:30
..
2018-07-10 23:58:29 +09:30
2016-05-19 14:07:06 +09:30
2016-05-19 14:07:06 +09:30
2016-05-19 14:07:06 +09:30
2016-05-19 14:07:06 +09:30
2016-05-19 14:07:06 +09:30
2016-05-19 14:07:06 +09:30
2017-07-12 19:31:26 +09:30
2017-07-12 19:31:26 +09:30
2018-07-10 23:58:29 +09:30
2017-07-12 19:31:26 +09:30
2018-09-17 23:17:14 +09:30
2014-12-24 11:56:51 +10:30
2019-01-29 06:07:42 -08:00
2018-07-10 23:58:29 +09:30
2017-07-12 19:31:26 +09:30
2019-05-04 17:23:18 +09:30
2019-05-04 17:23:18 +09:30
2018-07-10 23:58:29 +09:30
2018-07-10 23:58:29 +09:30
2019-04-16 19:59:55 +09:30
2019-02-06 17:33:54 +10:30
2019-01-29 06:07:42 -08:00
2019-01-29 06:07:42 -08:00
2019-01-29 06:07:42 -08:00
2013-08-26 19:27:25 +00:00
2016-05-09 17:07:33 +09:30
2013-03-05 02:55:27 +00:00
2013-03-05 02:55:27 +00:00
2013-03-05 02:55:27 +00:00
2013-07-19 13:21:55 +00:00
2014-02-02 06:39:39 -08:00
2014-02-02 06:39:39 -08:00
2017-02-25 19:13:34 +10:30
2014-02-02 06:39:39 -08:00
2014-02-02 06:39:39 -08:00
2017-02-25 19:13:34 +10:30
2014-02-02 06:39:39 -08:00
2013-08-26 19:27:25 +00:00
2017-07-12 19:31:26 +09:30
2019-04-16 19:59:55 +09:30
2017-02-25 19:13:34 +10:30