LDC 1.31.0

drock drock at gmail.com
Sun Feb 12 03:43:35 UTC 2023


On Saturday, 11 February 2023 at 13:47:54 UTC, kinke wrote:
> Glad to announce LDC 1.31.0. Major changes:
>
> * Based on D 2.101.2.
>   * ImportC: The C preprocessor isn't invoked yet.
> * mac/iOS arm64: Linking with `-g` is working again without 
> unaligned pointer warnings/errors.
> * *Preliminary* support for LLVM 15. Thanks @jamesragray for 
> helping out!
> * Initial ABI support for 64-bit RISC-V. Thanks @Ast-x64!
>
> Full release log and downloads: 
> https://github.com/ldc-developers/ldc/releases/tag/v1.31.0
>
> Thanks to all contributors & sponsors!

crash with "-passmanager=new -opaque-pointers" and LTO.
```sh
SSE: true
Stack dump without symbol names (ensure you have llvm-symbolizer 
in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to 
point to it):
0  ldc2                     0x00000001057f6b37 
llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 39
1  ldc2                     0x00000001057f59e6 
llvm::sys::RunSignalHandlers() + 198
2  ldc2                     0x00000001057f7190 SignalHandler(int) 
+ 288
3  libsystem_platform.dylib 0x00007ff805d73e2d _sigtramp + 29
4  libsystem_platform.dylib 0x0000054300000040 _sigtramp + 
18446609155803890224
5  ldc2                     0x00000001050ae592 (anonymous 
namespace)::AccessAnalysis::createCheckForAccess(llvm::RuntimePointerChecking&, llvm::PointerIntPair<llvm::Value*, 1u, bool, llvm::PointerLikeTypeTraits<llvm::Value*>, llvm::PointerIntPairInfo<llvm::Value*, 1u, llvm::PointerLikeTypeTraits<llvm::Value*> > >, llvm::DenseMap<llvm::Value const*, llvm::Value*, llvm::DenseMapInfo<llvm::Value const*, void>, llvm::detail::DenseMapPair<llvm::Value const*, llvm::Value*> > const&, llvm::DenseMap<llvm::Value*, unsigned int, llvm::DenseMapInfo<llvm::Value*, void>, llvm::detail::DenseMapPair<llvm::Value*, unsigned int> >&, llvm::Loop*, unsigned int&, unsigned int, bool, bool) + 642
6  ldc2                     0x00000001050ac063 (anonymous 
namespace)::AccessAnalysis::canCheckPtrAtRT(llvm::RuntimePointerChecking&, llvm::ScalarEvolution*, llvm::Loop*, llvm::DenseMap<llvm::Value const*, llvm::Value*, llvm::DenseMapInfo<llvm::Value const*, void>, llvm::detail::DenseMapPair<llvm::Value const*, llvm::Value*> > const&, bool) + 867
7  ldc2                     0x00000001050ab5df 
llvm::LoopAccessInfo::analyzeLoop(llvm::AAResults*, 
llvm::LoopInfo*, llvm::TargetLibraryInfo const*, 
llvm::DominatorTree*) + 6287
8  ldc2                     0x00000001050ad6be 
llvm::LoopAccessAnalysis::run(llvm::Loop&, 
llvm::AnalysisManager<llvm::Loop, 
llvm::LoopStandardAnalysisResults&>&, 
llvm::LoopStandardAnalysisResults&) + 46
9  ldc2                     0x0000000103ce3bd8 
llvm::detail::AnalysisPassModel<llvm::Loop, 
llvm::LoopAccessAnalysis, llvm::PreservedAnalyses, 
llvm::AnalysisManager<llvm::Loop, 
llvm::LoopStandardAnalysisResults&>::Invalidator, 
llvm::LoopStandardAnalysisResults&>::run(llvm::Loop&, 
llvm::AnalysisManager<llvm::Loop, 
llvm::LoopStandardAnalysisResults&>&, 
llvm::LoopStandardAnalysisResults&) + 40
10 ldc2                     0x00000001050b20d2 
llvm::AnalysisManager<llvm::Loop, 
llvm::LoopStandardAnalysisResults&>::getResultImpl(llvm::AnalysisKey*, llvm::Loop&, llvm::LoopStandardAnalysisResults&) + 722
11 ldc2                     0x000000010404d926 
std::__1::__function::__func<llvm::LoopVectorizePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&)::$_61, std::__1::allocator<llvm::LoopVectorizePass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&)::$_61>, llvm::LoopAccessInfo const& (llvm::Loop&)>::operator()(llvm::Loop&) + 102
12 ldc2                     0x0000000103ff73a0 
llvm::LoopVectorizationLegality::canVectorizeMemory() + 64
13 ldc2                     0x0000000103ff8c41 
llvm::LoopVectorizationLegality::canVectorize(bool) + 353
14 ldc2                     0x000000010402bd64 
llvm::LoopVectorizePass::processLoop(llvm::Loop*) + 628
15 ldc2                     0x00000001040307b5 
llvm::LoopVectorizePass::runImpl(llvm::Function&, 
llvm::ScalarEvolution&, llvm::LoopInfo&, 
llvm::TargetTransformInfo&, llvm::DominatorTree&, 
llvm::BlockFrequencyInfo&, llvm::TargetLibraryInfo*, 
llvm::DemandedBits&, llvm::AAResults&, llvm::AssumptionCache&, 
std::__1::function<llvm::LoopAccessInfo const& (llvm::Loop&)>&, 
llvm::OptimizationRemarkEmitter&, llvm::ProfileSummaryInfo*) + 453
16 ldc2                     0x0000000104030c93 
llvm::LoopVectorizePass::run(llvm::Function&, 
llvm::AnalysisManager<llvm::Function>&) + 675
17 ldc2                     0x0000000103d05622 
llvm::detail::PassModel<llvm::Function, llvm::LoopVectorizePass, 
llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function> 
 >::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) + 
18
18 ldc2                     0x00000001055550a8 
llvm::PassManager<llvm::Function, 
llvm::AnalysisManager<llvm::Function> >::run(llvm::Function&, 
llvm::AnalysisManager<llvm::Function>&) + 392
19 ldc2                     0x0000000103aa0512 
llvm::detail::PassModel<llvm::Function, 
llvm::PassManager<llvm::Function, 
llvm::AnalysisManager<llvm::Function> >, llvm::PreservedAnalyses, 
llvm::AnalysisManager<llvm::Function> >::run(llvm::Function&, 
llvm::AnalysisManager<llvm::Function>&) + 18
20 ldc2                     0x00000001055590af 
llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, 
llvm::AnalysisManager<llvm::Module>&) + 447
21 ldc2                     0x0000000103aa0312 
llvm::detail::PassModel<llvm::Module, 
llvm::ModuleToFunctionPassAdaptor, llvm::PreservedAnalyses, 
llvm::AnalysisManager<llvm::Module> >::run(llvm::Module&, 
llvm::AnalysisManager<llvm::Module>&) + 18
22 ldc2                     0x0000000105553b89 
llvm::PassManager<llvm::Module, 
llvm::AnalysisManager<llvm::Module> >::run(llvm::Module&, 
llvm::AnalysisManager<llvm::Module>&) + 441
23 ldc2                     0x0000000105c59442 
writeModule(llvm::Module*, char const*) + 8418
24 ldc2                     0x0000000105c541e0 
ldc::CodeGenerator::writeAndFreeLLModule(char const*) + 1360
25 ldc2                     0x0000000105c7158f 
codegenModules(Array<Module*>&) + 7631
26 ldc2                     0x0000000105b7b540 
mars_mainBody(Param&, Array<char const*>&, Array<char const*>&) + 
5136
Error: Error executing /usr/local/ldc2/bin/ldc2: Segmentation 
fault: 11
```


crash with "-opaque-pointers" and LTO.

```sh
Stack dump without symbol names (ensure you have llvm-symbolizer 
in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to 
point to it):
0  ldc2                     0x0000000105d11b37 
llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 39
1  ldc2                     0x0000000105d109e6 
llvm::sys::RunSignalHandlers() + 198
2  ldc2                     0x0000000105d12190 SignalHandler(int) 
+ 288
3  libsystem_platform.dylib 0x00007ff805d73e2d _sigtramp + 29
4  libsystem_platform.dylib 0x0000034c00000040 _sigtramp + 
18446606995435340336
5  ldc2                     0x00000001055c9592 (anonymous 
namespace)::AccessAnalysis::createCheckForAccess(llvm::RuntimePointerChecking&, llvm::PointerIntPair<llvm::Value*, 1u, bool, llvm::PointerLikeTypeTraits<llvm::Value*>, llvm::PointerIntPairInfo<llvm::Value*, 1u, llvm::PointerLikeTypeTraits<llvm::Value*> > >, llvm::DenseMap<llvm::Value const*, llvm::Value*, llvm::DenseMapInfo<llvm::Value const*, void>, llvm::detail::DenseMapPair<llvm::Value const*, llvm::Value*> > const&, llvm::DenseMap<llvm::Value*, unsigned int, llvm::DenseMapInfo<llvm::Value*, void>, llvm::detail::DenseMapPair<llvm::Value*, unsigned int> >&, llvm::Loop*, unsigned int&, unsigned int, bool, bool) + 642
6  ldc2                     0x00000001055c7063 (anonymous 
namespace)::AccessAnalysis::canCheckPtrAtRT(llvm::RuntimePointerChecking&, llvm::ScalarEvolution*, llvm::Loop*, llvm::DenseMap<llvm::Value const*, llvm::Value*, llvm::DenseMapInfo<llvm::Value const*, void>, llvm::detail::DenseMapPair<llvm::Value const*, llvm::Value*> > const&, bool) + 867
7  ldc2                     0x00000001055c65df 
llvm::LoopAccessInfo::analyzeLoop(llvm::AAResults*, 
llvm::LoopInfo*, llvm::TargetLibraryInfo const*, 
llvm::DominatorTree*) + 6287
8  ldc2                     0x00000001055c7f2a 
llvm::LoopAccessLegacyAnalysis::getInfo(llvm::Loop*) + 266
9  ldc2                     0x00000001045123a0 
llvm::LoopVectorizationLegality::canVectorizeMemory() + 64
10 ldc2                     0x0000000104513c41 
llvm::LoopVectorizationLegality::canVectorize(bool) + 353
11 ldc2                     0x0000000104546d64 
llvm::LoopVectorizePass::processLoop(llvm::Loop*) + 628
12 ldc2                     0x000000010454b7b5 
llvm::LoopVectorizePass::runImpl(llvm::Function&, 
llvm::ScalarEvolution&, llvm::LoopInfo&, 
llvm::TargetTransformInfo&, llvm::DominatorTree&, 
llvm::BlockFrequencyInfo&, llvm::TargetLibraryInfo*, 
llvm::DemandedBits&, llvm::AAResults&, llvm::AssumptionCache&, 
std::__1::function<llvm::LoopAccessInfo const& (llvm::Loop&)>&, 
llvm::OptimizationRemarkEmitter&, llvm::ProfileSummaryInfo*) + 453
13 ldc2                     0x0000000104553732 (anonymous 
namespace)::LoopVectorize::runOnFunction(llvm::Function&) + 994
14 ldc2                     0x0000000105a3329b 
llvm::FPPassManager::runOnFunction(llvm::Function&) + 907
15 ldc2                     0x0000000105a3954c 
llvm::FPPassManager::runOnModule(llvm::Module&) + 60
16 ldc2                     0x0000000105a338b5 
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 933
17 ldc2                     0x0000000106174bc4 
writeModule(llvm::Module*, char const*) + 10340
18 ldc2                     0x000000010616f1e0 
ldc::CodeGenerator::writeAndFreeLLModule(char const*) + 1360
19 ldc2                     0x000000010618c58f 
codegenModules(Array<Module*>&) + 7631
20 ldc2                     0x0000000106096540 
mars_mainBody(Param&, Array<char const*>&, Array<char const*>&) + 
5136
Error: Error executing /usr/local/ldc2/bin/ldc2: Segmentation 
fault: 11
```


More information about the Digitalmars-d-announce mailing list