[clang] [clang] Fix --entry command line option (PR #69114)

2023-12-25 Thread Sergei Barannikov via cfe-commits

s-barannikov wrote:

We do use this option with gcc, this is why I filed the issue.


https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-12-24 Thread Fangrui Song via cfe-commits

MaskRay wrote:

Since `--entry` is wrong, `--entry=` is unsupported, and nobody seems to use 
the driver option which only affects linking, we probably should just remove 
it. Users are expected to use `-Wl,-e,entry` or `-Wl,--entry=entry` anyway.

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-12-18 Thread Tuur Martens via cfe-commits

JohnyTheCarrot wrote:

Heya @MaskRay 

If and when you get the chance, would you mind giving it another look?
I applied your requested changes. :)

Thanks!

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-11-14 Thread Tuur Martens via cfe-commits

JohnyTheCarrot wrote:

Ping.

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-27 Thread Tuur Martens via cfe-commits

https://github.com/JohnyTheCarrot updated 
https://github.com/llvm/llvm-project/pull/69114

>From 111d19a7e03e2c59afc8d40c8210a901378594ee Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Sun, 15 Oct 2023 18:08:35 +0200
Subject: [PATCH 1/3] [clang] Fix --entry command line option

---
 clang/include/clang/Driver/Options.td | 3 ++-
 clang/test/Driver/entry.c | 5 +
 2 files changed, 7 insertions(+), 1 deletion(-)
 create mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 3f2058a5d4650ca..6737af0a8b68728 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
 def _extra_warnings : Flag<["--"], "extra-warnings">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
new file mode 100644
index 000..773e9676332e517
--- /dev/null
+++ b/clang/test/Driver/entry.c
@@ -0,0 +1,5 @@
+// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s
+// RUN: %clang -### --entry=test %s 2>&1 | FileCheck %s
+// RUN: %clang -### -etest %s 2>&1 | FileCheck %s
+
+// CHECK: "-e" "test"

>From 3bd714bd17d12d24d014362056374e0838a271c0 Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Mon, 16 Oct 2023 08:58:47 +0200
Subject: [PATCH 2/3] make requested changes

---
 clang/include/clang/Driver/Options.td | 2 +-
 clang/test/Driver/entry.c | 5 -
 clang/test/Driver/linker-opts.c   | 7 +++
 3 files changed, 8 insertions(+), 6 deletions(-)
 delete mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 6737af0a8b68728..084907a2a1696d2 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,7 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def : Joined<["--"], "entry=">, Flags<[LinkerInput]>, Group, 
Alias;
 def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
deleted file mode 100644
index 773e9676332e517..000
--- a/clang/test/Driver/entry.c
+++ /dev/null
@@ -1,5 +0,0 @@
-// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s
-// RUN: %clang -### --entry=test %s 2>&1 | FileCheck %s
-// RUN: %clang -### -etest %s 2>&1 | FileCheck %s
-
-// CHECK: "-e" "test"
diff --git a/clang/test/Driver/linker-opts.c b/clang/test/Driver/linker-opts.c
index 181aeadb8dc97db..72b33916ec79cbe 100644
--- a/clang/test/Driver/linker-opts.c
+++ b/clang/test/Driver/linker-opts.c
@@ -20,3 +20,10 @@
 // Make sure that we do warn in other cases.
 // RUN: %clang %s -lfoo -c -o %t/tmp2.o -### 2>&1 | FileCheck %s 
--check-prefix=UNUSED
 // UNUSED: warning:{{.*}}unused
+
+// Make sure -e and its aliases --entry and --entry= are properly passed on.
+// RUN: %clang -### -target x86_64-unknown-linux-gnu --entry test %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+// RUN: %clang -### -target x86_64-unknown-linux-gnu --entry=test %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+// RUN: %clang -### -target x86_64-unknown-linux-gnu -etest %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+
+// ENTRY: "-e" "test"

>From 03566b32cfa6c407f17c81fa9f8884024d0954a6 Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Fri, 27 Oct 2023 14:14:48 +0200
Subject: [PATCH 3/3] make requested changes

---
 clang/include/clang/Driver/Options.td | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 084907a2a1696d2..3253463003ee0e8 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,8 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 

[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-26 Thread Sergei Barannikov via cfe-commits


@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def : Joined<["--"], "entry=">, Flags<[LinkerInput]>, Group, 
Alias;
+def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;

s-barannikov wrote:

This should also be unnamed, I guess?


https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-26 Thread Fangrui Song via cfe-commits


@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def : Joined<["--"], "entry=">, Flags<[LinkerInput]>, Group, 
Alias;

MaskRay wrote:

Remove Flags and Group. They are ignored.

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-22 Thread Tuur Martens via cfe-commits

JohnyTheCarrot wrote:

Ping. Requested changes were made. Apologies if this ping is misplaced, I made 
it in good faith.

> (Please make sure to edit the description before merging so that git log does 
> not contain irrelevant information.)

You mean during the merge phase, right?

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-16 Thread Tuur Martens via cfe-commits

https://github.com/JohnyTheCarrot updated 
https://github.com/llvm/llvm-project/pull/69114

>From 111d19a7e03e2c59afc8d40c8210a901378594ee Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Sun, 15 Oct 2023 18:08:35 +0200
Subject: [PATCH 1/2] [clang] Fix --entry command line option

---
 clang/include/clang/Driver/Options.td | 3 ++-
 clang/test/Driver/entry.c | 5 +
 2 files changed, 7 insertions(+), 1 deletion(-)
 create mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 3f2058a5d4650ca..6737af0a8b68728 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
 def _extra_warnings : Flag<["--"], "extra-warnings">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
new file mode 100644
index 000..773e9676332e517
--- /dev/null
+++ b/clang/test/Driver/entry.c
@@ -0,0 +1,5 @@
+// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s
+// RUN: %clang -### --entry=test %s 2>&1 | FileCheck %s
+// RUN: %clang -### -etest %s 2>&1 | FileCheck %s
+
+// CHECK: "-e" "test"

>From 3bd714bd17d12d24d014362056374e0838a271c0 Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Mon, 16 Oct 2023 08:58:47 +0200
Subject: [PATCH 2/2] make requested changes

---
 clang/include/clang/Driver/Options.td | 2 +-
 clang/test/Driver/entry.c | 5 -
 clang/test/Driver/linker-opts.c   | 7 +++
 3 files changed, 8 insertions(+), 6 deletions(-)
 delete mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 6737af0a8b68728..084907a2a1696d2 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,7 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def : Joined<["--"], "entry=">, Flags<[LinkerInput]>, Group, 
Alias;
 def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
deleted file mode 100644
index 773e9676332e517..000
--- a/clang/test/Driver/entry.c
+++ /dev/null
@@ -1,5 +0,0 @@
-// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s
-// RUN: %clang -### --entry=test %s 2>&1 | FileCheck %s
-// RUN: %clang -### -etest %s 2>&1 | FileCheck %s
-
-// CHECK: "-e" "test"
diff --git a/clang/test/Driver/linker-opts.c b/clang/test/Driver/linker-opts.c
index 181aeadb8dc97db..72b33916ec79cbe 100644
--- a/clang/test/Driver/linker-opts.c
+++ b/clang/test/Driver/linker-opts.c
@@ -20,3 +20,10 @@
 // Make sure that we do warn in other cases.
 // RUN: %clang %s -lfoo -c -o %t/tmp2.o -### 2>&1 | FileCheck %s 
--check-prefix=UNUSED
 // UNUSED: warning:{{.*}}unused
+
+// Make sure -e and its aliases --entry and --entry= are properly passed on.
+// RUN: %clang -### -target x86_64-unknown-linux-gnu --entry test %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+// RUN: %clang -### -target x86_64-unknown-linux-gnu --entry=test %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+// RUN: %clang -### -target x86_64-unknown-linux-gnu -etest %s 2>&1 | 
FileCheck --check-prefix=ENTRY %s
+
+// ENTRY: "-e" "test"

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-15 Thread Fangrui Song via cfe-commits


@@ -0,0 +1,5 @@
+// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s

MaskRay wrote:

In the absence of `--target=`, the default target triple 
`LLVM_DEFAULT_TARGET_TRIPLE` is used. The selected `ToolChain` may not run 
AddLinkerInputs to render `-e`.

We should add `--target=` (common choice is a linux triple) and try reusing an 
existing test 
https://maskray.me/blog/2021-08-08-toolchain-testing#i-dont-know-an-existing-test-can-be-enhanced

Perhaps linker-opts.c or Xlinker-args.c

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-15 Thread Fangrui Song via cfe-commits

https://github.com/MaskRay requested changes to this pull request.

The new option (alias) can be unnamed.

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-15 Thread Sergei Barannikov via cfe-commits

https://github.com/s-barannikov approved this pull request.

Thanks, LGTM
(Please make sure to edit the description before merging so that `git log` does 
not contain irrelevant information.)

https://github.com/llvm/llvm-project/pull/69114
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-15 Thread Tuur Martens via cfe-commits

https://github.com/JohnyTheCarrot updated 
https://github.com/llvm/llvm-project/pull/69114

>From 111d19a7e03e2c59afc8d40c8210a901378594ee Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Sun, 15 Oct 2023 18:08:35 +0200
Subject: [PATCH] [clang] Fix --entry command line option

---
 clang/include/clang/Driver/Options.td | 3 ++-
 clang/test/Driver/entry.c | 5 +
 2 files changed, 7 insertions(+), 1 deletion(-)
 create mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 3f2058a5d4650ca..6737af0a8b68728 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
 def _extra_warnings : Flag<["--"], "extra-warnings">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
new file mode 100644
index 000..773e9676332e517
--- /dev/null
+++ b/clang/test/Driver/entry.c
@@ -0,0 +1,5 @@
+// RUN: %clang -### --entry test %s 2>&1 | FileCheck %s
+// RUN: %clang -### --entry=test %s 2>&1 | FileCheck %s
+// RUN: %clang -### -etest %s 2>&1 | FileCheck %s
+
+// CHECK: "-e" "test"

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Fix --entry command line option (PR #69114)

2023-10-15 Thread Tuur Martens via cfe-commits

https://github.com/JohnyTheCarrot created 
https://github.com/llvm/llvm-project/pull/69114

New to this sort of thing, still learning how to work with the project.
Contructive feedback very welcome.

See [the corresponding 
issue](https://github.com/llvm/llvm-project/issues/68355) for information on 
the bug.

Fixes: #68355

>From 15741d7f12d9549518eb157506429f7ff5453f66 Mon Sep 17 00:00:00 2001
From: Tuur Martens 
Date: Sun, 15 Oct 2023 18:08:35 +0200
Subject: [PATCH] [clang] Fix --entry command line option

---
 clang/include/clang/Driver/Options.td | 3 ++-
 clang/test/Driver/entry.c | 5 +
 2 files changed, 7 insertions(+), 1 deletion(-)
 create mode 100644 clang/test/Driver/entry.c

diff --git a/clang/include/clang/Driver/Options.td 
b/clang/include/clang/Driver/Options.td
index 3f2058a5d4650ca..6737af0a8b68728 100644
--- a/clang/include/clang/Driver/Options.td
+++ b/clang/include/clang/Driver/Options.td
@@ -5474,7 +5474,8 @@ def _dyld_prefix_EQ : Joined<["--"], "dyld-prefix=">;
 def _dyld_prefix : Separate<["--"], "dyld-prefix">, Alias<_dyld_prefix_EQ>;
 def _encoding_EQ : Joined<["--"], "encoding=">, Alias;
 def _encoding : Separate<["--"], "encoding">, Alias;
-def _entry : Flag<["--"], "entry">, Alias;
+def _entry_EQ : Joined<["--"], "entry=">, Flags<[LinkerInput]>, 
Group, Alias;
+def _entry : Separate<["--"], "entry">, Flags<[LinkerInput]>, 
Group, Alias;
 def _extdirs_EQ : Joined<["--"], "extdirs=">, Alias;
 def _extdirs : Separate<["--"], "extdirs">, Alias;
 def _extra_warnings : Flag<["--"], "extra-warnings">, Alias;
diff --git a/clang/test/Driver/entry.c b/clang/test/Driver/entry.c
new file mode 100644
index 000..9b264c1620b06ad
--- /dev/null
+++ b/clang/test/Driver/entry.c
@@ -0,0 +1,5 @@
+// RUN: %clang -### --entry test %s 2>&1 | FileCheck -check-prefix=TEST1 %s
+// RUN: %clang -### --entry=test %s 2>&1 | FileCheck -check-prefix=TEST1 %s
+// RUN: %clang -### --etest %s 2>&1 | FileCheck -check-prefix=TEST1 %s
+
+// CHECK: "-e" "test"

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits