Lines Matching +full:docs +full:- +full:lld +full:- +full:html

10   #    llvm/utils/prepare-code-coverage-artifact.py \
11 # --compilation-dir=out/gn \
12 # .../llvm-profdata .../llvm-cov out/gn/profiles/ report/ \
13 # out/gn/bin/llvm-undname ...
14 # to generate a HTML report for the binaries passed in the last line.
22 # 3. Run `llvm-profdata merge *.profraw -o llvm.profdata` to merge them.
27 # If non-empty, path to merged profiling data used for optimization
35 # http://blog.llvm.org/2019/11/deterministic-builds-with-clang-and-lld.html
68 # Mostly for compiler-rt, see compiler-rt/cmake/config-ix.cmake
70 asmflags += [ "-miphoneos-version-min=8.0" ]
71 cflags += [ "-miphoneos-version-min=8.0" ]
72 ldflags += [ "-miphoneos-version-min=8.0" ]
75 asmflags += [ "-mmacos-version-min=$mac_deployment_target" ]
76 cflags += [ "-mmacos-version-min=$mac_deployment_target" ]
77 ldflags += [ "-mmacos-version-min=$mac_deployment_target" ]
84 cflags += [ "-g" ]
86 # For full debug-info -g builds, --gdb-index makes links ~15% slower, and
87 # gdb symbol reading time 1500% faster (lld links in 4.4 instead of 3.9s,
93 cflags += [ "-ggnu-pubnames" ] # PR34820
94 ldflags += [ "-Wl,--gdb-index" ]
105 # This requires `-Wl,--gdb-index` (above) to work well.
107 # With lld, this reduces link time:
108 # - in release + symbol_level=2 builds: From 2.3s to 1.3s
109 # - in debug builds: From 5.2s to 4.6s
119 cflags += [ "-gsplit-dwarf" ]
120 ldflags += [ "-gsplit-dwarf" ] # Needed for ThinLTO builds.
123 cflags += [ "-g1" ]
124 # For linetable-only -g1 builds, --gdb-index makes links ~8% slower, but
125 # links are 4x faster than -g builds so it's a fairly small absolute cost.
127 # index, and people using -g1 likely don't use a debugger. So don't use
129 # Linetables always go in the .o file, even with -gsplit-dwarf, so there's
130 # no point in passing -gsplit-dwarf here.
133 cflags += [ "-O3" ]
135 cflags += [ "-fdiagnostics-color" ]
137 ldflags += [ "-Wl,--color-diagnostics" ]
140 "-std=c++17",
141 "-fvisibility-inlines-hidden",
150 cflags += [ "-gline-tables-only" ]
156 cflags += [ "-gcodeview-ghash" ]
183 cflags += [ "/EHs-c-" ]
191 # clang-cl gets it right by default, so don't needlessly add the flag there.
204 "-wd4141",
207 "-wd4244",
210 "-wd4267",
213 "-wd4291",
216 "-wd4577",
219 "-wd4624",
222 "-wd4805",
229 "-Wall",
230 "-Wextra",
233 cflags += [ "-Wno-unused-parameter" ]
236 "-Wdelete-non-virtual-dtor",
237 "-Wstring-conversion",
241 # GCC's -Wcomment complains about // comments ending with '\' if the
243 "-Wno-comment",
247 "-Wno-maybe-uninitialized",
250 # The LLVM libraries have no stable C++ API, so -Wnoexcept-type is not
252 "-Wno-noexcept-type",
256 # Disable -Wclass-memaccess, a C++-only warning from GCC 8 that fires
258 "-Wno-class-memaccess",
263 # Disable -Wredundant-move on GCC>=9. GCC wants to remove std::move
266 # instead) on clang<=3.8. Clang also has a -Wredundant-move, but it
268 "-Wno-redundant-move",
276 ldflags += [ "-fuse-ld=lld" ]
281 "-fcoverage-mapping",
283 # For build determinism. Using this requires passing --compilation-dir to
284 # llvm/utils/prepare-code-coverage-artifact.py.
285 "-fcoverage-compilation-dir=.",
289 # for test execution -- so this is the only way to get all profiles into
290 # a single folder like llvm/utils/prepare-code-coverage-artifact.py
292 "-fprofile-instr-generate=" +
296 ldflags += [ "-fprofile-instr-generate" ]
300 cflags += [ "-fprofile-generate" ]
302 ldflags += [ "-fprofile-generate" ]
307 "-fprofile-use=" + rebase_path(llvm_pgo_use, root_build_dir),
311 # (hash mismatch) [-Wbackend-plugin]
313 "-Wno-backend-plugin",
318 # http://blog.llvm.org/2019/11/deterministic-builds-with-clang-and-lld.html
324 "-no-canonical-prefixes",
325 "-Werror=date-time",
328 cflags += [ "-fmsc-version=1926" ]
335 cflags += [ "-fdebug-compilation-dir=." ]
340 assert(is_clang, "sysroot only works with clang-cl as host compiler")
354 cflags += [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ]
367 "-isysroot",
371 "-isysroot",
376 cflags += [ "-Wpoison-system-directories" ]
384 "-fsanitize=undefined",
385 "-fno-sanitize=vptr,function",
386 "-fno-sanitize-recover=all",
388 ldflags += [ "-fsanitize=undefined" ]
395 cflags += [ "-fsanitize=address" ]
396 ldflags += [ "-fsanitize=address" ]
402 cflags += [ "-fsanitize=thread" ]
403 ldflags += [ "-fsanitize=thread" ]
411 cflags += [ "-flto=thin" ]
420 "-flto=thin",
421 "-Wl,--thinlto-jobs=" + max_jobs_per_lto_link,
422 "-Wl,--lto-O" + lto_opt_level,
433 cflags_cc += [ "-fno-exceptions" ]
440 cflags_cc = [ "/GR-" ]
442 cflags_cc = [ "-fno-rtti" ]
448 # -Wl,-z,defs doesn't work with sanitizers.
449 # https://clang.llvm.org/docs/AddressSanitizer.html
452 ldflags = [ "-Wl,-z,defs" ]
460 arflags = [ "-T" ]
470 cflags = [ "-fPIC" ]
476 "//lld/include",
477 "$root_gen_dir/lld/include",
483 cflags = [ "-fno-strict-aliasing" ]
499 include_dirs = [ "//compiler-rt/lib" ]
501 "-fno-builtin",
502 "-gline-tables-only",
506 "-fPIC",
507 "-funwind-tables",
508 "-fvisibility=hidden",
514 "/Zc:threadSafeInit-",
519 "-Werror=thread-safety",
520 "-Werror=thread-safety-reference",
521 "-Werror=thread-safety-beta",
528 cflags = [ "-fno-strict-aliasing" ]
538 cflags = [ "-Wcovered-switch-default" ]