dim e9c27b8af7 Pull in r372186 from upstream llvm trunk (by Eli Friedman):
[ARM] VFPv2 only supports 16 D registers.

  r361845 changed the way we handle "D16" vs. "D32" targets; there used
  to be a negative "d16" which removed instructions from the
  instruction set, and now there's a "d32" feature which adds
  instructions to the instruction set.  This is good, but there was an
  oversight in the implementation: the behavior of VFPv2 was changed.
  In particular, the "vfp2" feature was changed to imply "d32". This is
  wrong: VFPv2 only supports 16 D registers.

  In practice, this means if you specify -mfpu=vfpv2, the compiler will
  generate illegal instructions.

  This patch gets rid of "vfp2d16" and "vfp2d16sp", and fixes "vfp2"
  and "vfp2sp" so they don't imply "d32".

  Differential Revision: https://reviews.llvm.org/D67375

Pull in r372187 from upstream clang trunk (by Eli Friedman):

  [ARM] Update clang for removal of vfp2d16 and vfp2d16sp

  Matching fix for https://reviews.llvm.org/D67375 (r372186).

  Differential Revision: https://reviews.llvm.org/D67467

This should fix clang generating invalid opcodes for floating point
operations on armv6.

Requested by:	mmel
MFC after:	3 days
2019-10-25 21:00:49 +00:00
..
2019-02-26 05:59:22 +00:00
2018-12-23 01:05:52 +00:00
2019-08-11 06:26:03 +00:00
2018-10-20 20:49:46 +00:00
2018-09-19 06:42:05 +00:00
2019-09-30 17:27:59 +00:00
2018-11-04 18:24:11 +00:00
2019-06-29 18:41:40 +00:00
2019-09-26 01:50:20 +00:00
2018-05-31 09:11:21 +00:00
2019-09-01 16:41:24 +00:00
2019-05-08 18:46:12 +00:00
2018-08-14 18:58:01 +00:00
2019-09-21 21:02:57 +00:00
2018-11-26 15:33:55 +00:00
2019-05-08 11:04:09 +00:00
2019-09-26 18:24:04 +00:00
2019-02-25 18:41:16 +00:00
2019-07-18 00:27:28 +00:00
2019-09-12 00:19:16 +00:00
2019-07-04 08:40:10 +00:00
2019-08-22 18:52:30 +00:00