vegecode aff2e47821 compiler-rt: correct use_thumb_1 flag
The flag is for generating correct arm-thumb interwork veneers in the
assembly code __aeabi_{memcpy,memset,etc} functions.

Armv6m only does thumb code generation regardless of whether arm or
thumb is selected and armv6t2 uses the newer thumb 2 set. All other
versions that zig supports pre-armv7 need the veneers and hence the
flag. Armv5 is actually armv5t.

Relevant code from clang/lib/Basic/Targets/Arm.cpp

```c
bool ARMTargetInfo::isThumb() const {
  return ArchISA == llvm::ARM::ISAKind::THUMB;
  }

bool ARMTargetInfo::supportsThumb() const {
  return CPUAttr.count('T') || ArchVersion >= 6;
}

bool ARMTargetInfo::supportsThumb2() const {
  return CPUAttr.equals("6T2") ||
    (ArchVersion >= 7 && !CPUAttr.equals("8M_BASE"));
}
```

Also see

http://www.llvm.org/svn/llvm-project/llvm/trunk/lib/Target/ARM/ARM.td
2019-04-10 12:35:16 -04:00
..
2019-03-02 16:46:04 -05:00
2019-03-31 16:47:34 -05:00
2019-03-02 16:46:04 -05:00
2019-04-05 11:03:57 -04:00
2019-03-25 16:04:25 -04:00
2019-03-02 16:46:04 -05:00
2018-09-30 17:28:35 -04:00
2019-04-03 20:05:24 +00:00
2018-11-13 05:08:37 -08:00
2019-03-29 12:17:48 -04:00
2019-03-02 16:46:04 -05:00
2019-04-05 16:06:35 -04:00
2019-03-02 16:46:04 -05:00
2019-03-02 16:46:04 -05:00
2019-03-29 12:18:42 -04:00
2019-03-24 00:44:18 -04:00
2019-03-02 16:46:04 -05:00