Commit 2400745
committed
[ARM][Driver] Ensure NEON is enabled and Disabled correctly
In llvm#130623 support was added for `+nosimd` in the clang driver.
Following this PR, it was discovered that, if NEONS is disabled in
the command line, it did not disable features that have NEON as
a requirement, such as Crypto or AES. To achieve this, clang will
now check if SIMD has been disabled when using a NEON supported
FPU. If this is the case, it will disable all features that depend
on NEON.
While working on this Patch, I spotted that for features that rely
on NEON, when used, do not enable NEON in the Driver. This meant
that when using AES for example, NEON would not be activated. NEON
is required when using features such as AES, so this is now enabled
when using such features.1 parent 6c56160 commit 2400745
File tree
5 files changed
+65
-9
lines changed- clang
- docs
- lib/Driver/ToolChains/Arch
- test
- Driver
- Preprocessor
5 files changed
+65
-9
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
601 | 601 | | |
602 | 602 | | |
603 | 603 | | |
| 604 | + | |
| 605 | + | |
604 | 606 | | |
605 | 607 | | |
606 | 608 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
781 | 781 | | |
782 | 782 | | |
783 | 783 | | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
784 | 808 | | |
785 | 809 | | |
786 | 810 | | |
| |||
791 | 815 | | |
792 | 816 | | |
793 | 817 | | |
| 818 | + | |
| 819 | + | |
| 820 | + | |
794 | 821 | | |
795 | 822 | | |
796 | 823 | | |
| |||
803 | 830 | | |
804 | 831 | | |
805 | 832 | | |
806 | | - | |
807 | | - | |
808 | | - | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
809 | 846 | | |
810 | | - | |
| 847 | + | |
811 | 848 | | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
812 | 855 | | |
813 | 856 | | |
814 | 857 | | |
| |||
823 | 866 | | |
824 | 867 | | |
825 | 868 | | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
826 | 874 | | |
827 | 875 | | |
828 | 876 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
77 | | - | |
| 77 | + | |
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
407 | 407 | | |
408 | 408 | | |
409 | 409 | | |
410 | | - | |
| 410 | + | |
411 | 411 | | |
412 | 412 | | |
413 | 413 | | |
| |||
416 | 416 | | |
417 | 417 | | |
418 | 418 | | |
419 | | - | |
| 419 | + | |
420 | 420 | | |
421 | 421 | | |
422 | 422 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1036 | 1036 | | |
1037 | 1037 | | |
1038 | 1038 | | |
1039 | | - | |
1040 | | - | |
| 1039 | + | |
| 1040 | + | |
1041 | 1041 | | |
1042 | 1042 | | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
1043 | 1049 | | |
1044 | 1050 | | |
1045 | 1051 | | |
0 commit comments