xcodebuild-helper 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.codeclimate.yml +20 -0
- data/.gitignore +1 -0
- data/.rspec +2 -0
- data/.travis.yml +7 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +110 -0
- data/Guardfile +18 -0
- data/README.md +7 -0
- data/Rakefile +7 -0
- data/TODO.md +3 -0
- data/bin/oclint +5 -0
- data/bin/oclint-0.8 +5 -0
- data/bin/oclint-json-compilation-database +5 -0
- data/bin/oclint-xcodebuild +5 -0
- data/externals/oclint/LICENSE +69 -0
- data/externals/oclint/bin/oclint +0 -0
- data/externals/oclint/bin/oclint-0.10.2 +0 -0
- data/externals/oclint/bin/oclint-json-compilation-database +88 -0
- data/externals/oclint/bin/oclint-xcodebuild +218 -0
- data/externals/oclint/lib/clang/3.7.0/asan_blacklist.txt +13 -0
- data/externals/oclint/lib/clang/3.7.0/include/Intrin.h +958 -0
- data/externals/oclint/lib/clang/3.7.0/include/__stddef_max_align_t.h +43 -0
- data/externals/oclint/lib/clang/3.7.0/include/__wmmintrin_aes.h +72 -0
- data/externals/oclint/lib/clang/3.7.0/include/__wmmintrin_pclmul.h +34 -0
- data/externals/oclint/lib/clang/3.7.0/include/adxintrin.h +88 -0
- data/externals/oclint/lib/clang/3.7.0/include/altivec.h +13528 -0
- data/externals/oclint/lib/clang/3.7.0/include/ammintrin.h +215 -0
- data/externals/oclint/lib/clang/3.7.0/include/arm_acle.h +304 -0
- data/externals/oclint/lib/clang/3.7.0/include/arm_neon.h +68419 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx2intrin.h +1256 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512bwintrin.h +1250 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512cdintrin.h +131 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512dqintrin.h +242 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512erintrin.h +285 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512fintrin.h +2457 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512vlbwintrin.h +1907 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512vldqintrin.h +353 -0
- data/externals/oclint/lib/clang/3.7.0/include/avx512vlintrin.h +1982 -0
- data/externals/oclint/lib/clang/3.7.0/include/avxintrin.h +1308 -0
- data/externals/oclint/lib/clang/3.7.0/include/bmi2intrin.h +99 -0
- data/externals/oclint/lib/clang/3.7.0/include/bmiintrin.h +153 -0
- data/externals/oclint/lib/clang/3.7.0/include/cpuid.h +209 -0
- data/externals/oclint/lib/clang/3.7.0/include/cuda_builtin_vars.h +110 -0
- data/externals/oclint/lib/clang/3.7.0/include/emmintrin.h +1480 -0
- data/externals/oclint/lib/clang/3.7.0/include/f16cintrin.h +63 -0
- data/externals/oclint/lib/clang/3.7.0/include/float.h +124 -0
- data/externals/oclint/lib/clang/3.7.0/include/fma4intrin.h +236 -0
- data/externals/oclint/lib/clang/3.7.0/include/fmaintrin.h +234 -0
- data/externals/oclint/lib/clang/3.7.0/include/fxsrintrin.h +55 -0
- data/externals/oclint/lib/clang/3.7.0/include/htmintrin.h +226 -0
- data/externals/oclint/lib/clang/3.7.0/include/htmxlintrin.h +363 -0
- data/externals/oclint/lib/clang/3.7.0/include/ia32intrin.h +101 -0
- data/externals/oclint/lib/clang/3.7.0/include/immintrin.h +203 -0
- data/externals/oclint/lib/clang/3.7.0/include/inttypes.h +102 -0
- data/externals/oclint/lib/clang/3.7.0/include/iso646.h +43 -0
- data/externals/oclint/lib/clang/3.7.0/include/limits.h +118 -0
- data/externals/oclint/lib/clang/3.7.0/include/lzcntintrin.h +72 -0
- data/externals/oclint/lib/clang/3.7.0/include/mm3dnow.h +167 -0
- data/externals/oclint/lib/clang/3.7.0/include/mm_malloc.h +75 -0
- data/externals/oclint/lib/clang/3.7.0/include/mmintrin.h +507 -0
- data/externals/oclint/lib/clang/3.7.0/include/module.modulemap +196 -0
- data/externals/oclint/lib/clang/3.7.0/include/nmmintrin.h +35 -0
- data/externals/oclint/lib/clang/3.7.0/include/pmmintrin.h +122 -0
- data/externals/oclint/lib/clang/3.7.0/include/popcntintrin.h +50 -0
- data/externals/oclint/lib/clang/3.7.0/include/prfchwintrin.h +39 -0
- data/externals/oclint/lib/clang/3.7.0/include/rdseedintrin.h +59 -0
- data/externals/oclint/lib/clang/3.7.0/include/rtmintrin.h +59 -0
- data/externals/oclint/lib/clang/3.7.0/include/s390intrin.h +39 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/allocator_interface.h +66 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/asan_interface.h +155 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/common_interface_defs.h +118 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/coverage_interface.h +63 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/dfsan_interface.h +114 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/linux_syscall_hooks.h +3070 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/lsan_interface.h +84 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/msan_interface.h +107 -0
- data/externals/oclint/lib/clang/3.7.0/include/sanitizer/tsan_interface_atomic.h +222 -0
- data/externals/oclint/lib/clang/3.7.0/include/shaintrin.h +79 -0
- data/externals/oclint/lib/clang/3.7.0/include/smmintrin.h +487 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdalign.h +35 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdarg.h +52 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdatomic.h +190 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdbool.h +44 -0
- data/externals/oclint/lib/clang/3.7.0/include/stddef.h +137 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdint.h +707 -0
- data/externals/oclint/lib/clang/3.7.0/include/stdnoreturn.h +30 -0
- data/externals/oclint/lib/clang/3.7.0/include/tbmintrin.h +154 -0
- data/externals/oclint/lib/clang/3.7.0/include/tgmath.h +1374 -0
- data/externals/oclint/lib/clang/3.7.0/include/tmmintrin.h +230 -0
- data/externals/oclint/lib/clang/3.7.0/include/unwind.h +282 -0
- data/externals/oclint/lib/clang/3.7.0/include/vadefs.h +65 -0
- data/externals/oclint/lib/clang/3.7.0/include/varargs.h +26 -0
- data/externals/oclint/lib/clang/3.7.0/include/vecintrin.h +8946 -0
- data/externals/oclint/lib/clang/3.7.0/include/wmmintrin.h +42 -0
- data/externals/oclint/lib/clang/3.7.0/include/x86intrin.h +81 -0
- data/externals/oclint/lib/clang/3.7.0/include/xmmintrin.h +1008 -0
- data/externals/oclint/lib/clang/3.7.0/include/xopintrin.h +809 -0
- data/externals/oclint/lib/clang/3.7.0/include/xtestintrin.h +41 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.asan_iossim_dynamic.dylib +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.asan_osx_dynamic.dylib +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.builtins-i386.a +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.builtins-x86_64.a +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.profile_osx.a +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.safestack_osx.a +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.ubsan_iossim_dynamic.dylib +0 -0
- data/externals/oclint/lib/clang/3.7.0/lib/darwin/libclang_rt.ubsan_osx_dynamic.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libHTMLReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libJSONReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libPMDReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libTextReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libXMLReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/reporters/libXcodeReporter.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libAvoidBranchingStatementAsLastInLoopRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libAvoidDefaultArgumentsOnVirtualMethodsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libAvoidPrivateStaticMembersRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libBaseClassDestructorShouldBeVirtualOrProtectedRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libBitwiseOperatorInConditionalRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libBrokenNullCheckRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libBrokenOddnessCheckRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libCollapsibleIfStatementsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libConstantConditionalOperatorRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libConstantIfExpressionRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libCoveredSwitchStatementsDontNeedDefaultRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libCyclomaticComplexityRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libDeadCodeRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libDefaultLabelNotLastInSwitchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libDestructorOfVirtualClassRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libDoubleNegativeRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyCatchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyDoWhileStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyElseBlockRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyFinallyStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyForStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyIfStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptySwitchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyTryStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libEmptyWhileStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libForLoopShouldBeWhileLoopRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libGotoStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libInvertedLogicRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libJumbledIncrementerRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libLongClassRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libLongLineRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libLongMethodRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libLongVariableNameRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libMisplacedNullCheckRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libMissingBreakInSwitchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libMultipleUnaryOperatorRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libNPathComplexityRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libNcssMethodCountRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libNestedBlockDepthRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libNonCaseLabelInSwitchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCAssignIvarOutsideAccessorsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCBoxedExpressionsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCContainerLiteralsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCNSNumberLiteralsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCObjectSubscriptingRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCVerifyIsEqualHashRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCVerifyMustCallSuperRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCVerifyProhibitedCallRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCVerifyProtectedMethodRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libObjCVerifySubclassMustImplementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libParameterReassignmentRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libPreferEarlyExitRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libRedundantConditionalOperatorRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libRedundantIfStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libRedundantLocalVariableRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libRedundantNilCheckRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libReturnFromFinallyBlockRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libShortVariableNameRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libSwitchStatementsShouldHaveDefaultRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libThrowExceptionFromFinallyBlockRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libTooFewBranchesInSwitchStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libTooManyFieldsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libTooManyMethodsRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libTooManyParametersRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libUnnecessaryElseStatementRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libUnnecessaryNullCheckForCXXDeallocRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libUnusedLocalVariableRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libUnusedMethodParameterRule.dylib +0 -0
- data/externals/oclint/lib/oclint/rules/libUselessParenthesesRule.dylib +0 -0
- data/lib/coverage_plan.rb +19 -0
- data/lib/device.rb +27 -0
- data/lib/execute.rb +7 -0
- data/lib/lint_plan.rb +41 -0
- data/lib/rules.rb +23 -0
- data/lib/test_plan.rb +11 -0
- data/lib/version.rb +3 -0
- data/lib/xcode.rb +128 -0
- data/lib/xcodebuild-helper.rb +110 -0
- data/spec/coverage_plan_spec.rb +18 -0
- data/spec/device_spec.rb +24 -0
- data/spec/lint_plan_spec.rb +35 -0
- data/spec/rule_spec.rb +37 -0
- data/spec/spec_helper.rb +17 -0
- data/spec/test_plan_spec.rb +11 -0
- data/spec/xcode_dsl_actions_spec.rb +136 -0
- data/spec/xcode_dsl_spec.rb +176 -0
- data/spec/xcode_spec.rb +79 -0
- data/xcodebuild-helper.gemspec +26 -0
- metadata +327 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
module _Builtin_intrinsics [system] [extern_c] {
|
|
2
|
+
explicit module altivec {
|
|
3
|
+
requires altivec
|
|
4
|
+
header "altivec.h"
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
explicit module arm {
|
|
8
|
+
requires arm
|
|
9
|
+
|
|
10
|
+
explicit module acle {
|
|
11
|
+
header "arm_acle.h"
|
|
12
|
+
export *
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
explicit module neon {
|
|
16
|
+
requires neon
|
|
17
|
+
header "arm_neon.h"
|
|
18
|
+
export *
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
explicit module intel {
|
|
23
|
+
requires x86
|
|
24
|
+
export *
|
|
25
|
+
|
|
26
|
+
header "immintrin.h"
|
|
27
|
+
header "x86intrin.h"
|
|
28
|
+
|
|
29
|
+
explicit module mm_malloc {
|
|
30
|
+
header "mm_malloc.h"
|
|
31
|
+
export * // note: for <stdlib.h> dependency
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
explicit module cpuid {
|
|
35
|
+
requires x86
|
|
36
|
+
header "cpuid.h"
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
explicit module mmx {
|
|
40
|
+
requires mmx
|
|
41
|
+
header "mmintrin.h"
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
explicit module f16c {
|
|
45
|
+
requires f16c
|
|
46
|
+
header "f16cintrin.h"
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
explicit module sse {
|
|
50
|
+
requires sse
|
|
51
|
+
export mmx
|
|
52
|
+
export sse2 // note: for hackish <emmintrin.h> dependency
|
|
53
|
+
header "xmmintrin.h"
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
explicit module sse2 {
|
|
57
|
+
requires sse2
|
|
58
|
+
export sse
|
|
59
|
+
header "emmintrin.h"
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
explicit module sse3 {
|
|
63
|
+
requires sse3
|
|
64
|
+
export sse2
|
|
65
|
+
header "pmmintrin.h"
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
explicit module ssse3 {
|
|
69
|
+
requires ssse3
|
|
70
|
+
export sse3
|
|
71
|
+
header "tmmintrin.h"
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
explicit module sse4_1 {
|
|
75
|
+
requires sse41
|
|
76
|
+
export ssse3
|
|
77
|
+
header "smmintrin.h"
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
explicit module sse4_2 {
|
|
81
|
+
requires sse42
|
|
82
|
+
export sse4_1
|
|
83
|
+
header "nmmintrin.h"
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
explicit module sse4a {
|
|
87
|
+
requires sse4a
|
|
88
|
+
export sse3
|
|
89
|
+
header "ammintrin.h"
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
explicit module avx {
|
|
93
|
+
requires avx
|
|
94
|
+
export sse4_2
|
|
95
|
+
header "avxintrin.h"
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
explicit module avx2 {
|
|
99
|
+
requires avx2
|
|
100
|
+
export avx
|
|
101
|
+
header "avx2intrin.h"
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
explicit module avx512f {
|
|
105
|
+
requires avx512f
|
|
106
|
+
export avx2
|
|
107
|
+
header "avx512fintrin.h"
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
explicit module avx512er {
|
|
111
|
+
requires avx512er
|
|
112
|
+
header "avx512erintrin.h"
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
explicit module bmi {
|
|
116
|
+
requires bmi
|
|
117
|
+
header "bmiintrin.h"
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
explicit module bmi2 {
|
|
121
|
+
requires bmi2
|
|
122
|
+
header "bmi2intrin.h"
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
explicit module fma {
|
|
126
|
+
requires fma
|
|
127
|
+
header "fmaintrin.h"
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
explicit module fma4 {
|
|
131
|
+
requires fma4
|
|
132
|
+
export sse3
|
|
133
|
+
header "fma4intrin.h"
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
explicit module lzcnt {
|
|
137
|
+
requires lzcnt
|
|
138
|
+
header "lzcntintrin.h"
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
explicit module popcnt {
|
|
142
|
+
requires popcnt
|
|
143
|
+
header "popcntintrin.h"
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
explicit module mm3dnow {
|
|
147
|
+
requires mm3dnow
|
|
148
|
+
header "mm3dnow.h"
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
explicit module xop {
|
|
152
|
+
requires xop
|
|
153
|
+
export fma4
|
|
154
|
+
header "xopintrin.h"
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
explicit module aes_pclmul {
|
|
158
|
+
requires aes, pclmul
|
|
159
|
+
header "wmmintrin.h"
|
|
160
|
+
export aes
|
|
161
|
+
export pclmul
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
explicit module aes {
|
|
165
|
+
requires aes
|
|
166
|
+
header "__wmmintrin_aes.h"
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
explicit module pclmul {
|
|
170
|
+
requires pclmul
|
|
171
|
+
header "__wmmintrin_pclmul.h"
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
explicit module systemz {
|
|
176
|
+
requires systemz
|
|
177
|
+
export *
|
|
178
|
+
|
|
179
|
+
header "s390intrin.h"
|
|
180
|
+
|
|
181
|
+
explicit module htm {
|
|
182
|
+
requires htm
|
|
183
|
+
header "htmintrin.h"
|
|
184
|
+
header "htmxlintrin.h"
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
explicit module zvector {
|
|
188
|
+
requires zvector, vx
|
|
189
|
+
header "vecintrin.h"
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
module _Builtin_stddef_max_align_t [system] [extern_c] {
|
|
195
|
+
header "__stddef_max_align_t.h"
|
|
196
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/*===---- nmmintrin.h - SSE4 intrinsics ------------------------------------===
|
|
2
|
+
*
|
|
3
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
* in the Software without restriction, including without limitation the rights
|
|
6
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
* furnished to do so, subject to the following conditions:
|
|
9
|
+
*
|
|
10
|
+
* The above copyright notice and this permission notice shall be included in
|
|
11
|
+
* all copies or substantial portions of the Software.
|
|
12
|
+
*
|
|
13
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
* THE SOFTWARE.
|
|
20
|
+
*
|
|
21
|
+
*===-----------------------------------------------------------------------===
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
#ifndef _NMMINTRIN_H
|
|
25
|
+
#define _NMMINTRIN_H
|
|
26
|
+
|
|
27
|
+
#ifndef __SSE4_2__
|
|
28
|
+
#error "SSE4.2 instruction set not enabled"
|
|
29
|
+
#else
|
|
30
|
+
|
|
31
|
+
/* To match expectations of gcc we put the sse4.2 definitions into smmintrin.h,
|
|
32
|
+
just include it now then. */
|
|
33
|
+
#include <smmintrin.h>
|
|
34
|
+
#endif /* __SSE4_2__ */
|
|
35
|
+
#endif /* _NMMINTRIN_H */
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/*===---- pmmintrin.h - SSE3 intrinsics ------------------------------------===
|
|
2
|
+
*
|
|
3
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
* in the Software without restriction, including without limitation the rights
|
|
6
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
* furnished to do so, subject to the following conditions:
|
|
9
|
+
*
|
|
10
|
+
* The above copyright notice and this permission notice shall be included in
|
|
11
|
+
* all copies or substantial portions of the Software.
|
|
12
|
+
*
|
|
13
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
* THE SOFTWARE.
|
|
20
|
+
*
|
|
21
|
+
*===-----------------------------------------------------------------------===
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
#ifndef __PMMINTRIN_H
|
|
25
|
+
#define __PMMINTRIN_H
|
|
26
|
+
|
|
27
|
+
#ifndef __SSE3__
|
|
28
|
+
#error "SSE3 instruction set not enabled"
|
|
29
|
+
#else
|
|
30
|
+
|
|
31
|
+
#include <emmintrin.h>
|
|
32
|
+
|
|
33
|
+
/* Define the default attributes for the functions in this file. */
|
|
34
|
+
#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
|
|
35
|
+
|
|
36
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
37
|
+
_mm_lddqu_si128(__m128i const *__p)
|
|
38
|
+
{
|
|
39
|
+
return (__m128i)__builtin_ia32_lddqu((char const *)__p);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS
|
|
43
|
+
_mm_addsub_ps(__m128 __a, __m128 __b)
|
|
44
|
+
{
|
|
45
|
+
return __builtin_ia32_addsubps(__a, __b);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS
|
|
49
|
+
_mm_hadd_ps(__m128 __a, __m128 __b)
|
|
50
|
+
{
|
|
51
|
+
return __builtin_ia32_haddps(__a, __b);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS
|
|
55
|
+
_mm_hsub_ps(__m128 __a, __m128 __b)
|
|
56
|
+
{
|
|
57
|
+
return __builtin_ia32_hsubps(__a, __b);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS
|
|
61
|
+
_mm_movehdup_ps(__m128 __a)
|
|
62
|
+
{
|
|
63
|
+
return __builtin_shufflevector(__a, __a, 1, 1, 3, 3);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
static __inline__ __m128 __DEFAULT_FN_ATTRS
|
|
67
|
+
_mm_moveldup_ps(__m128 __a)
|
|
68
|
+
{
|
|
69
|
+
return __builtin_shufflevector(__a, __a, 0, 0, 2, 2);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS
|
|
73
|
+
_mm_addsub_pd(__m128d __a, __m128d __b)
|
|
74
|
+
{
|
|
75
|
+
return __builtin_ia32_addsubpd(__a, __b);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS
|
|
79
|
+
_mm_hadd_pd(__m128d __a, __m128d __b)
|
|
80
|
+
{
|
|
81
|
+
return __builtin_ia32_haddpd(__a, __b);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS
|
|
85
|
+
_mm_hsub_pd(__m128d __a, __m128d __b)
|
|
86
|
+
{
|
|
87
|
+
return __builtin_ia32_hsubpd(__a, __b);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
#define _mm_loaddup_pd(dp) _mm_load1_pd(dp)
|
|
91
|
+
|
|
92
|
+
static __inline__ __m128d __DEFAULT_FN_ATTRS
|
|
93
|
+
_mm_movedup_pd(__m128d __a)
|
|
94
|
+
{
|
|
95
|
+
return __builtin_shufflevector(__a, __a, 0, 0);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
#define _MM_DENORMALS_ZERO_ON (0x0040)
|
|
99
|
+
#define _MM_DENORMALS_ZERO_OFF (0x0000)
|
|
100
|
+
|
|
101
|
+
#define _MM_DENORMALS_ZERO_MASK (0x0040)
|
|
102
|
+
|
|
103
|
+
#define _MM_GET_DENORMALS_ZERO_MODE() (_mm_getcsr() & _MM_DENORMALS_ZERO_MASK)
|
|
104
|
+
#define _MM_SET_DENORMALS_ZERO_MODE(x) (_mm_setcsr((_mm_getcsr() & ~_MM_DENORMALS_ZERO_MASK) | (x)))
|
|
105
|
+
|
|
106
|
+
static __inline__ void __DEFAULT_FN_ATTRS
|
|
107
|
+
_mm_monitor(void const *__p, unsigned __extensions, unsigned __hints)
|
|
108
|
+
{
|
|
109
|
+
__builtin_ia32_monitor((void *)__p, __extensions, __hints);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
static __inline__ void __DEFAULT_FN_ATTRS
|
|
113
|
+
_mm_mwait(unsigned __extensions, unsigned __hints)
|
|
114
|
+
{
|
|
115
|
+
__builtin_ia32_mwait(__extensions, __hints);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
#undef __DEFAULT_FN_ATTRS
|
|
119
|
+
|
|
120
|
+
#endif /* __SSE3__ */
|
|
121
|
+
|
|
122
|
+
#endif /* __PMMINTRIN_H */
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/*===---- popcntintrin.h - POPCNT intrinsics -------------------------------===
|
|
2
|
+
*
|
|
3
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
* in the Software without restriction, including without limitation the rights
|
|
6
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
* furnished to do so, subject to the following conditions:
|
|
9
|
+
*
|
|
10
|
+
* The above copyright notice and this permission notice shall be included in
|
|
11
|
+
* all copies or substantial portions of the Software.
|
|
12
|
+
*
|
|
13
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
* THE SOFTWARE.
|
|
20
|
+
*
|
|
21
|
+
*===-----------------------------------------------------------------------===
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
#ifndef __POPCNT__
|
|
25
|
+
#error "POPCNT instruction set not enabled"
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
#ifndef _POPCNTINTRIN_H
|
|
29
|
+
#define _POPCNTINTRIN_H
|
|
30
|
+
|
|
31
|
+
/* Define the default attributes for the functions in this file. */
|
|
32
|
+
#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
|
|
33
|
+
|
|
34
|
+
static __inline__ int __DEFAULT_FN_ATTRS
|
|
35
|
+
_mm_popcnt_u32(unsigned int __A)
|
|
36
|
+
{
|
|
37
|
+
return __builtin_popcount(__A);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
#ifdef __x86_64__
|
|
41
|
+
static __inline__ long long __DEFAULT_FN_ATTRS
|
|
42
|
+
_mm_popcnt_u64(unsigned long long __A)
|
|
43
|
+
{
|
|
44
|
+
return __builtin_popcountll(__A);
|
|
45
|
+
}
|
|
46
|
+
#endif /* __x86_64__ */
|
|
47
|
+
|
|
48
|
+
#undef __DEFAULT_FN_ATTRS
|
|
49
|
+
|
|
50
|
+
#endif /* _POPCNTINTRIN_H */
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*===---- prfchwintrin.h - PREFETCHW intrinsic -----------------------------===
|
|
2
|
+
*
|
|
3
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
* in the Software without restriction, including without limitation the rights
|
|
6
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
* furnished to do so, subject to the following conditions:
|
|
9
|
+
*
|
|
10
|
+
* The above copyright notice and this permission notice shall be included in
|
|
11
|
+
* all copies or substantial portions of the Software.
|
|
12
|
+
*
|
|
13
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
* THE SOFTWARE.
|
|
20
|
+
*
|
|
21
|
+
*===-----------------------------------------------------------------------===
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
#if !defined(__X86INTRIN_H) && !defined(_MM3DNOW_H_INCLUDED)
|
|
25
|
+
#error "Never use <prfchwintrin.h> directly; include <x86intrin.h> or <mm3dnow.h> instead."
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
#ifndef __PRFCHWINTRIN_H
|
|
29
|
+
#define __PRFCHWINTRIN_H
|
|
30
|
+
|
|
31
|
+
#if defined(__PRFCHW__) || defined(__3dNOW__)
|
|
32
|
+
static __inline__ void __attribute__((__always_inline__, __nodebug__))
|
|
33
|
+
_m_prefetchw(void *__P)
|
|
34
|
+
{
|
|
35
|
+
__builtin_prefetch (__P, 1, 3 /* _MM_HINT_T0 */);
|
|
36
|
+
}
|
|
37
|
+
#endif
|
|
38
|
+
|
|
39
|
+
#endif /* __PRFCHWINTRIN_H */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*===---- rdseedintrin.h - RDSEED intrinsics -------------------------------===
|
|
2
|
+
*
|
|
3
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
* in the Software without restriction, including without limitation the rights
|
|
6
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
* furnished to do so, subject to the following conditions:
|
|
9
|
+
*
|
|
10
|
+
* The above copyright notice and this permission notice shall be included in
|
|
11
|
+
* all copies or substantial portions of the Software.
|
|
12
|
+
*
|
|
13
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
* THE SOFTWARE.
|
|
20
|
+
*
|
|
21
|
+
*===-----------------------------------------------------------------------===
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
#ifndef __X86INTRIN_H
|
|
25
|
+
#error "Never use <rdseedintrin.h> directly; include <x86intrin.h> instead."
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
#ifndef __RDSEEDINTRIN_H
|
|
29
|
+
#define __RDSEEDINTRIN_H
|
|
30
|
+
|
|
31
|
+
#ifdef __RDSEED__
|
|
32
|
+
|
|
33
|
+
/* Define the default attributes for the functions in this file. */
|
|
34
|
+
#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
|
|
35
|
+
|
|
36
|
+
static __inline__ int __DEFAULT_FN_ATTRS
|
|
37
|
+
_rdseed16_step(unsigned short *__p)
|
|
38
|
+
{
|
|
39
|
+
return __builtin_ia32_rdseed16_step(__p);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
static __inline__ int __DEFAULT_FN_ATTRS
|
|
43
|
+
_rdseed32_step(unsigned int *__p)
|
|
44
|
+
{
|
|
45
|
+
return __builtin_ia32_rdseed32_step(__p);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
#ifdef __x86_64__
|
|
49
|
+
static __inline__ int __DEFAULT_FN_ATTRS
|
|
50
|
+
_rdseed64_step(unsigned long long *__p)
|
|
51
|
+
{
|
|
52
|
+
return __builtin_ia32_rdseed64_step(__p);
|
|
53
|
+
}
|
|
54
|
+
#endif
|
|
55
|
+
|
|
56
|
+
#undef __DEFAULT_FN_ATTRS
|
|
57
|
+
|
|
58
|
+
#endif /* __RDSEED__ */
|
|
59
|
+
#endif /* __RDSEEDINTRIN_H */
|