llvm-project/clang/lib
Fangrui Song 80a4e6fd31 [Driver] Error for -gsplit-dwarf with RISC-V linker relaxation
-gsplit-dwarf produces a .dwo file which will not be processed by the linker. If
.dwo files contain relocations, they will not be resolved. Therefore the
practice is that .dwo files do not contain relocations.

Address ranges and location description need to use forms/entry kinds indexing
into .debug_addr (DW_FORM_addrx/DW_RLE_startx_endx/etc), which is currently not
implemented.

There is a difficult-to-read MC error with -gsplit-dwarf with RISC-V for both -mrelax and -mno-relax.
```
% clang --target=riscv64-linux-gnu -g -gsplit-dwarf -c a.c
error: A dwo section may not contain relocations
```

We expect to fix -mno-relax soon, so report a driver error for -mrelax for now.

Link: https://github.com/llvm/llvm-project/issues/56642

Reviewed By: compnerd, kito-cheng

Differential Revision: https://reviews.llvm.org/D130190
2022-07-22 17:16:41 -07:00
..
APINotes
ARCMigrate Revert "[clang] Implement ElaboratedType sugaring for types written bare" 2022-07-14 21:17:48 -07:00
AST [NFC] give getParentFunctionOrMethod a 'Lexical' parameter 2022-07-22 12:52:26 -07:00
ASTMatchers Adds AST matcher for ObjCStringLiteral 2022-06-30 15:20:10 -07:00
Analysis [clang][dataflow] Add DataflowEnvironment::dump() 2022-07-23 01:31:53 +02:00
Basic Use value instead of getValue (NFC) 2022-07-19 21:18:26 -07:00
CodeGen [CUDA/SPIR-V] Force passing aggregate type byval 2022-07-22 20:30:15 +00:00
CrossTU [clang][NFC][AST] rename the ImportError to ASTImportError 2022-06-15 00:40:32 +05:30
DirectoryWatcher [clang] Don't use Optional::hasValue (NFC) 2022-06-20 10:51:34 -07:00
Driver [Driver] Error for -gsplit-dwarf with RISC-V linker relaxation 2022-07-22 17:16:41 -07:00
Edit [clang] Don't use Optional::hasValue (NFC) 2022-06-25 22:26:24 -07:00
ExtractAPI [NFC] Start saving InstantiatedFromDecl in non-template functions 2022-07-22 12:37:14 -07:00
Format [clang-format] Indent tokens after hash only if it starts a line 2022-07-20 21:52:17 -07:00
Frontend [Frontend] Correct values of ATOMIC_*_LOCK_FREE to match builtin 2022-07-21 17:23:29 -07:00
FrontendTool [C++20][Modules][HU 1/5] Introduce header units as a module type. 2022-03-25 09:17:14 +00:00
Headers [CUDA][FIX] Make shfl[_sync] for unsigned long long non-recursive 2022-07-21 12:36:54 -05:00
Index [AST] Improve traversal of concepts and concept requirements 2022-04-28 09:33:26 +00:00
IndexSerialization
Interpreter [Interpreter] Pass target features to JIT 2022-06-30 21:25:14 +02:00
Lex Use any_of (NFC) 2022-07-22 01:05:17 -07:00
Parse re-land [C++20][Modules] Build module static initializers per P1874R1. 2022-07-22 08:38:07 +01:00
Rewrite Add assert on End iteration distance to Rewriter::getRewrittenText. 2022-01-25 17:26:13 +00:00
Sema [NFC] Start saving InstantiatedFromDecl in non-template functions 2022-07-22 12:37:14 -07:00
Serialization [NFC] Start saving InstantiatedFromDecl in non-template functions 2022-07-22 12:37:14 -07:00
StaticAnalyzer [analyzer][NFC] Use `SValVisitor` instead of explicit helper functions 2022-07-19 23:10:00 +03:00
Support [clang] Use value instead of getValue (NFC) 2022-07-13 23:39:33 -07:00
Testing [include-cleaner] Include-cleaner library structure, and simplistic AST walking. 2022-04-29 11:04:11 +02:00
Tooling [Tooling/DependencyScanning] Enable passing a `vfs::FileSystem` object to `DependencyScanningTool` 2022-07-18 09:37:17 -07:00
CMakeLists.txt [RISCV] Moving RVV intrinsic type related util to clang/Support 2022-04-20 21:13:13 +08:00