More LLP64 fixes and __PIC__ values fixes for PE targets
Checks
Commit Message
Comments
On Tue, Feb 14, 2023, 05:42 Jonathan Yong via Gcc-patches <
gcc-patches@gcc.gnu.org> wrote:
> Attached patches OK?
Ping
On 2/14/23 03:42, Jonathan Yong via Gcc-patches wrote:
> Attached patches OK?
>
> 0002-gcc-testsuite-gcc.dg-fix-pic-test-case-for-PE-target.patch
>
> From 616e43ac41879040e73a266065874148553cddcc Mon Sep 17 00:00:00 2001
> From: Jonathan Yong<10walls@gmail.com>
> Date: Tue, 14 Feb 2023 10:37:03 +0000
> Subject: [PATCH 2/2] gcc/testsuite/gcc.dg: fix pic test case for PE targets
>
> gcc/testsuite/ChangeLog:
>
> * pic-2.c: fix expected __PIC__ value.
> * pic-3.c: ditto.
> * pic-4.c: ditto.
Please adjust your ChangeLog entries slightly, in particular, please
capitalize the first letter in each ChangeLog entry. ie, fix->Fix,
ditto->Ditto.
Presumably the windows platforms are not always PIC and thus should not
be handled in a manner similar to MIPS?
Assuming that's the case, then this patch is OK with the trivial
ChangeLog fixes.
>
>
> 0001-gcc-testsuite-gcc.dg-fix-LLP64-targets.patch
>
> From a1fafc5a3c70684e843f5f0b6cf392ce349cb6b0 Mon Sep 17 00:00:00 2001
> From: Jonathan Yong<10walls@gmail.com>
> Date: Tue, 14 Feb 2023 10:29:05 +0000
> Subject: [PATCH 1/2] gcc/testsuite/gcc.dg: fix LLP64 targets
>
> gcc/testsuite/ChangeLog:
>
> * gcc.dg/builtins-69.c: Use (long )*regex pattern to
> allow long long instead of just long.
> * gcc.dg/pr80163.c: use __INTPTR_TYPE__ for LLP64 tagets.
OK with the trivial ChangeLog fix use->Use for the change to pr80163.c.
jeff
On 3/11/23 17:29, Jeff Law wrote:
>
>
> On 2/14/23 03:42, Jonathan Yong via Gcc-patches wrote:
>> Attached patches OK?
>>
>> 0002-gcc-testsuite-gcc.dg-fix-pic-test-case-for-PE-target.patch
>>
>> From 616e43ac41879040e73a266065874148553cddcc Mon Sep 17 00:00:00 2001
>> From: Jonathan Yong<10walls@gmail.com>
>> Date: Tue, 14 Feb 2023 10:37:03 +0000
>> Subject: [PATCH 2/2] gcc/testsuite/gcc.dg: fix pic test case for PE
>> targets
>>
>> gcc/testsuite/ChangeLog:
>>
>> * pic-2.c: fix expected __PIC__ value.
>> * pic-3.c: ditto.
>> * pic-4.c: ditto.
> Please adjust your ChangeLog entries slightly, in particular, please
> capitalize the first letter in each ChangeLog entry. ie, fix->Fix,
> ditto->Ditto.
>
> Presumably the windows platforms are not always PIC and thus should not
> be handled in a manner similar to MIPS?
>
> Assuming that's the case, then this patch is OK with the trivial
> ChangeLog fixes.
>
>
Windows code is effectively always PIC, since the PE loader can relocate
it anywhere if the preferred address is already occupied. Patch still OK?
>>
>>
>> 0001-gcc-testsuite-gcc.dg-fix-LLP64-targets.patch
>>
>> From a1fafc5a3c70684e843f5f0b6cf392ce349cb6b0 Mon Sep 17 00:00:00 2001
>> From: Jonathan Yong<10walls@gmail.com>
>> Date: Tue, 14 Feb 2023 10:29:05 +0000
>> Subject: [PATCH 1/2] gcc/testsuite/gcc.dg: fix LLP64 targets
>>
>> gcc/testsuite/ChangeLog:
>>
>> * gcc.dg/builtins-69.c: Use (long )*regex pattern to
>> allow long long instead of just long.
>> * gcc.dg/pr80163.c: use __INTPTR_TYPE__ for LLP64 tagets.
> OK with the trivial ChangeLog fix use->Use for the change to pr80163.c.
>
> jeff
OK.
On 3/11/23 18:54, Jonathan Yong wrote:
> On 3/11/23 17:29, Jeff Law wrote:
>>
>>
>> On 2/14/23 03:42, Jonathan Yong via Gcc-patches wrote:
>>> Attached patches OK?
>>>
>>> 0002-gcc-testsuite-gcc.dg-fix-pic-test-case-for-PE-target.patch
>>>
>>> From 616e43ac41879040e73a266065874148553cddcc Mon Sep 17 00:00:00 2001
>>> From: Jonathan Yong<10walls@gmail.com>
>>> Date: Tue, 14 Feb 2023 10:37:03 +0000
>>> Subject: [PATCH 2/2] gcc/testsuite/gcc.dg: fix pic test case for PE
>>> targets
>>>
>>> gcc/testsuite/ChangeLog:
>>>
>>> * pic-2.c: fix expected __PIC__ value.
>>> * pic-3.c: ditto.
>>> * pic-4.c: ditto.
>> Please adjust your ChangeLog entries slightly, in particular, please
>> capitalize the first letter in each ChangeLog entry. ie, fix->Fix,
>> ditto->Ditto.
>>
>> Presumably the windows platforms are not always PIC and thus should
>> not be handled in a manner similar to MIPS?
>>
>> Assuming that's the case, then this patch is OK with the trivial
>> ChangeLog fixes.
>>
>>
>
> Windows code is effectively always PIC, since the PE loader can relocate
> it anywhere if the preferred address is already occupied. Patch still OK?
Yes, still OK. Just make the trivial ChangeLog adjustments.
Thanks,
jeff
On 3/12/23 16:54, Jeff Law wrote:
>
>>
>> Windows code is effectively always PIC, since the PE loader can
>> relocate it anywhere if the preferred address is already occupied.
>> Patch still OK?
> Yes, still OK. Just make the trivial ChangeLog adjustments.
>
Done, pushed to master branch, thanks.
From a1fafc5a3c70684e843f5f0b6cf392ce349cb6b0 Mon Sep 17 00:00:00 2001
From: Jonathan Yong <10walls@gmail.com>
Date: Tue, 14 Feb 2023 10:29:05 +0000
Subject: [PATCH 1/2] gcc/testsuite/gcc.dg: fix LLP64 targets
gcc/testsuite/ChangeLog:
* gcc.dg/builtins-69.c: Use (long )*regex pattern to
allow long long instead of just long.
* gcc.dg/pr80163.c: use __INTPTR_TYPE__ for LLP64 tagets.
Signed-off-by: Jonathan Yong <10walls@gmail.com>
---
gcc/testsuite/gcc.dg/builtins-69.c | 2 +-
gcc/testsuite/gcc.dg/pr80163.c | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
@@ -14,7 +14,7 @@ int test_index (void)
/* PR middle-end/86202 - ICE in get_range_info calling an invalid memcpy()
declaration */
-void *memcpy (void *, void *, __SIZE_TYPE__ *); /* { dg-warning "conflicting types for built-in function .memcpy.; expected .void \\\*\\\(void \\\*, const void \\\*, \(long \)?unsigned int\\\)." } */
+void *memcpy (void *, void *, __SIZE_TYPE__ *); /* { dg-warning "conflicting types for built-in function .memcpy.; expected .void \\\*\\\(void \\\*, const void \\\*, \(long \)*unsigned int\\\)." } */
void test_memcpy (void *p, void *q, __SIZE_TYPE__ *r)
{
@@ -2,6 +2,7 @@
/* { dg-do compile { target int128 } } */
/* { dg-options "-O0" } */
+typedef __INTPTR_TYPE__ intptr_t;
void bar (void);
__int128_t *
@@ -10,7 +11,7 @@ foo (void)
a:
bar ();
b:;
- static __int128_t d = (long) &&a - (long) &&b; /* { dg-error "initializer element is not computable at load time" } */
+ static __int128_t d = (intptr_t) &&a - (intptr_t) &&b; /* { dg-error "initializer element is not computable at load time" } */
return &d;
}
--
2.39.1