https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From 3c33c4b902a41a414769be7079e8847e41fb5912 Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
@@ -1,7 +1,7 @@
-// RUN: %clang_cc1 -triple x86_64-linux -std=c++98 %s -O3 -disable-llvm-passes
-pedantic-errors -emit-llvm -o - | FileCheck %s
dybv-sc wrote:
Yes,
The matter is that if no llvm passes are run, IR is unoptimized and contains
extra load and stor
https://github.com/dybv-sc edited
https://github.com/llvm/llvm-project/pull/75177
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1,7 +1,7 @@
-// RUN: %clang_cc1 -triple x86_64-linux -std=c++98 %s -O3 -disable-llvm-passes
-pedantic-errors -emit-llvm -o - | FileCheck %s
dybv-sc wrote:
I am sure that level 3 optimization should cut out all stack manipulation here
leaving only one necess
@@ -184,13 +199,24 @@ llvm::MDNode *CodeGenTBAA::getTypeInfoHelper(const Type
*Ty) {
return getChar();
// Handle pointers and references.
- // TODO: Implement C++'s type "similarity" and consider dis-"similar"
- // pointers distinct.
- if (Ty->isPointerType() || Ty->
@@ -4598,8 +4602,7 @@ LValue CodeGenFunction::EmitLValueForField(LValue base,
if (base.getTBAAInfo().isMayAlias() ||
rec->hasAttr() || FieldType->isVectorType()) {
FieldTBAAInfo = TBAAAccessInfo::getMayAliasInfo();
- } else if (rec->isUnion()) {
-// TODO: S
@@ -184,13 +199,24 @@ llvm::MDNode *CodeGenTBAA::getTypeInfoHelper(const Type
*Ty) {
return getChar();
// Handle pointers and references.
- // TODO: Implement C++'s type "similarity" and consider dis-"similar"
- // pointers distinct.
- if (Ty->isPointerType() || Ty->
@@ -216,6 +216,9 @@ ENUM_CODEGENOPT(StructReturnConvention,
StructReturnConventionKind, 2, SRCK_Defa
CODEGENOPT(RelaxAll , 1, 0) ///< Relax all machine code instructions.
CODEGENOPT(RelaxedAliasing , 1, 0) ///< Set when -fno-strict-aliasing is
enabled.
CODEGENOPT(S
dybv-sc wrote:
@rjmccall , I updated part of commit that handles pointers. Added comment with
C/C++ standard references to explain my decisions. Could you please review it
again?
https://github.com/llvm/llvm-project/pull/75177
___
cfe-commits mailing
@@ -105,13 +105,28 @@ static bool isValidBaseType(QualType QTy) {
if (RD->hasFlexibleArrayMember())
return false;
// RD can be struct, union, class, interface or enum.
-// For now, we only handle struct and class.
-if (RD->isStruct() || RD->isClass())
+
dybv-sc wrote:
> (As usual, please make any LLVM changes separately from Clang changes,
> especially if they affect IR design.)
I splitted commit into 2 parts for llvm and clang. Should I make separate PRs
for them as well?
https://github.com/llvm/llvm-project/pull/75177
_
dybv-sc wrote:
I made separate PR for llvm's part:
https://github.com/llvm/llvm-project/pull/76356
It should me merged first, because clang's part depends on it.
https://github.com/llvm/llvm-project/pull/75177
___
cfe-commits mailing list
cfe-commits@
@@ -184,13 +205,59 @@ llvm::MDNode *CodeGenTBAA::getTypeInfoHelper(const Type
*Ty) {
return getChar();
// Handle pointers and references.
- // TODO: Implement C++'s type "similarity" and consider dis-"similar"
- // pointers distinct.
- if (Ty->isPointerType() || Ty->
dybv-sc wrote:
> Thanks for working on this! I think it would be good to split this up into
> multiple distinct parts for the different improvements.
>
> I put up a patch to support distinct metadata for distinct pointers a while
> ago, which I just moved to GH: #76261.
>
> The discussion on
@@ -1,7 +1,7 @@
-// RUN: %clang_cc1 -triple x86_64-linux -std=c++98 %s -O3 -disable-llvm-passes
-pedantic-errors -emit-llvm -o - | FileCheck %s
-// RUN: %clang_cc1 -triple x86_64-linux -std=c++11 %s -O3 -disable-llvm-passes
-pedantic-errors -emit-llvm -o - | FileCheck %s
-// RUN
@@ -105,13 +105,34 @@ static bool isValidBaseType(QualType QTy) {
if (RD->hasFlexibleArrayMember())
return false;
// RD can be struct, union, class, interface or enum.
-// For now, we only handle struct and class.
-if (RD->isStruct() || RD->isClass())
+
dybv-sc wrote:
@MaskRay, could you please look into this?
https://github.com/llvm/llvm-project/pull/68904
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/dybv-sc created
https://github.com/llvm/llvm-project/pull/68904
When compiling for target riscv64/32-uknown-elf clang assumes that it do not
use lld linker even if explicitly told ('-fuse-ld=lld').
>From 8512bbcee108751776591160797af32885377587 Mon Sep 17 00:00:00 2001
From:
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From eca69cd54e9f2f68d89787376c603164c2508da1 Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From 087d22970d1d2eea6dd0dd79eedd49ed69bc49c3 Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
dybv-sc wrote:
Encountered code formatting check failure seems to be not reproducible locally:
```
$ git-clang-format --diff 7025ff6fa3dfe2ce8d3d7fcb0ec9de9a357d2c6f
087d22970d1d2eea6dd0dd79eedd49ed69bc49c3 --
clang/lib/Driver/ToolChains/RISCVToolchain.cpp
clang/lib/Driver/ToolChains/RISCVToo
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From 0802a4170b6eddd1ae5bd532f90274794b0e00c4 Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From d66ffe242716560408bd314a9725bb49556992e0 Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From 51a150e7abd2ff88261f82fc4a4c799f2a1fb11d Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From d61eacc29e0b70dc50ee7eeb96446b7b66dc2e1d Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
https://github.com/dybv-sc updated
https://github.com/llvm/llvm-project/pull/68904
>From d1ceb3258b0ade810ebdcb3bf2c5727026bef17f Mon Sep 17 00:00:00 2001
From: Dmitry Bushev
Date: Mon, 9 Oct 2023 19:49:09 +0300
Subject: [PATCH] [clang] Add information about lld presence in RISCVToolchain.
---
26 matches
Mail list logo