Re: Reload Problem in delete_output_reload

2006-12-04 Thread Ulrich Weigand
this semantics. Especially the check within delete_output_reload is not > correct. I'm not sure how delete_output_reload comes into play here. The decision to inherit was already made long ago, in choose_reload_regs, and that is already incorrect. Even if the output reload for insn 1597 were not deleted at this point, the code would still be incorrect. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Re: Reload Problem in delete_output_reload

2006-12-05 Thread Ulrich Weigand
s not counted. I see. This does look exactly like the problem Alexandre Oliva fixed for PR target/28146: http://gcc.gnu.org/ml/gcc-patches/2006-08/msg00592.html This patch is in mainline, but hasn't been applied to the 4.1 branch. Could you check whether it fixes your problem? Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Re: Import GCC 4.2.0 PRs

2007-03-12 Thread Ulrich Weigand
n have a look at that one. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Broken debug info with G++ anon struct typedefs

2007-03-15 Thread Ulrich Weigand
iginal anonymous struct type has already run through rest_of_type_compilation at this stage, which has already called dwarf2out_decl on it. This in turn has already allocated the DIE and set up the name information. Changing TYPE_NAME afterwards has no effect on the debug data any more. Any suggestions how to fix this? Thanks, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Re: Trouble understanding reload dump file format..

2007-03-19 Thread Ulrich Weigand
has just a single element, you might just as well use the hard reg directly in the insn pattern here. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Re: Trouble understanding reload dump file format..

2007-03-19 Thread Ulrich Weigand
that the register has to exist as a class because you can only specify > secondary reloads on a per-reg-class basis. I see, that makes sense. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE [EMAIL PROTECTED]

Re: reload-branch created

2005-03-18 Thread Ulrich Weigand
HARD_REGNO_NREGS (offsetted_regno, inmode); ! ! for (k = 0; k < nregs; k++) ! if (! TEST_HARD_REG_BIT (*usable_regs, offsetted_regno + k)) ! return IT_NONE; ! ! can_use_inheritance_reg = 0; ! } else { nregs = HARD_REGNO_NREGS (offsetted_regno, mode); -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: reload-branch created

2005-03-20 Thread Ulrich Weigand
Bernd Schmidt <[EMAIL PROTECTED]> wrote on 03/20/2005 07:41:14 PM: > This is OK. Would you check it in? Done, thanks. Mit freundlichen Gruessen / Best Regards Ulrich Weigand -- Dr. Ulrich Weigand Linux for S/390 Design & Development IBM Deutschland Entwicklung GmbH, Sch

Re: [m68k]: Trouble trying to figure out LEGITIMIZE_RELOAD_ADDRESS

2005-03-30 Thread Ulrich Weigand
t additionally checks EXTRA_CONSTRAINT, and if the current operand is rejected, reload will automatically reload the operand into a base register. Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: reload-branch created

2005-04-14 Thread Ulrich Weigand
run the test suite without regressions (all languages, including Ada) on s390-ibm-linux and s390x-ibm-linux. Thanks for taking care of this problem! Mit freundlichen Gruessen / Best Regards Ulrich Weigand -- Dr. Ulrich Weigand Linux for S/390 Design & Development IBM Deutschland

Re: GCC 3.4.4 RC2

2005-05-14 Thread Ulrich Weigand
t the 'make check-abi' run will overwrite the libstdc++.log and libstdc++.sum files generated by the main 'make check' run. This is why the results are missing from the test_summary report ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: RFC: (use) useful for avoiding unnecessary compare instructions during cc0->CCmode ?!

2005-05-14 Thread Ulrich Weigand
his works because combine will treat the initial parallel as a 'single-set' insn, and nearly all optimizations will be enabled. Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

4.0 regression: missing debug info for global variables in C with -O2

2005-05-30 Thread Ulrich Weigand
h, when building with the C++ front-end, the debug info is properly emitted. I'm not sure where exactly the difference is ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: 4.0 regression: missing debug info for global variables in C with -O2

2005-05-30 Thread Ulrich Weigand
; with -S -O2 -g on gcc 3.4 and 4.0 and look at the resulting assembler file, the difference is quite obvious ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: 4.0 regression: missing debug info for global variables in C

2005-05-31 Thread Ulrich Weigand
Paolo Bonzini wrote: > Maybe this is responsible for part of PR21828? I'd say this *is* PR21828: note that the variables whose type is unknown are global variables in C code compiled with -O2 ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Edges, predictions, and GC crashes ...

2005-06-02 Thread Ulrich Weigand
c) is does indeed appear that it is possible for edges to get deleted without the corresponding prediction structure being removed as well ... How is this supposed to work? Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: Edges, predictions, and GC crashes ...

2005-06-02 Thread Ulrich Weigand
ompilation failed to produce executable FAIL: libmudflap.c++/pass57-frag.cxx (-O3) (test for excess errors) WARNING: libmudflap.c++/pass57-frag.cxx (-O3) compilation failed to produce executable with current mainline on s390-ibm-linux. Thanks for looking into this issue! Bye, Ulrich -- Dr. Ulric

Re: Edges, predictions, and GC crashes ...

2005-06-04 Thread Ulrich Weigand
ion list -- but it still remains on the old one's list ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.01 RC1 Available

2005-06-09 Thread Ulrich Weigand
6/msg00583.html http://gcc.gnu.org/ml/gcc-testresults/2005-06/msg00584.html Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.0.1 RC2

2005-06-18 Thread Ulrich Weigand
Mark Michell wrote: > GCC 4.0.1 RC2 is now available here: > >ftp://gcc.gnu.org/pub/gcc/prerelease-4.0.1-20050616 Still fine on s390(x): http://gcc.gnu.org/ml/gcc-testresults/2005-06/msg01103.html http://gcc.gnu.org/ml/gcc-testresults/2005-06/msg01104.html Bye, Ulrich -- D

Re: Do C++ signed types have modulo semantics?

2005-06-28 Thread Ulrich Weigand
0% in some SPECfp cases from getting induction variable reduction wrong ...) Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Bootstrap failure -- verify_ssa failed

2005-06-28 Thread Ulrich Weigand
_NAME: TMT.628_22 in statement: TMT.628_41 = PHI ; PHI argument TMT.628_22 for PHI node TMT.628_41 = PHI ; ../../gcc-head/gcc/tree-ssa-operands.c:570: internal compiler error: verify_ssa failed. Before I start debugging, does this ring any bells? Thanks, Ulrich -- Dr. Ulrich Weigand Linux

Re: Bootstrap failure -- verify_ssa failed

2005-06-30 Thread Ulrich Weigand
Diego Novillo <[EMAIL PROTECTED]> wrote on 28.06.2005 20:51:52: > On Tue, Jun 28, 2005 at 08:38:13PM +0200, Ulrich Weigand wrote: > > Hello, > > > > with current GCC mainline bootstrap fails on s390(x)-ibm-linux > > during stage2 build with: > > > I&#x

Re: GCC 4.0.1 RC3

2005-07-04 Thread Ulrich Weigand
ur systems. s390(x)-ibm-linux is still looking good: http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00182.html http://gcc.gnu.org/ml/gcc-testresults/2005-07/msg00183.html Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.0.2 RC1 Available

2005-09-14 Thread Ulrich Weigand
lems, please file them in > bugzilla, and add me to the CC: list. s390(x)-ibm-linux are looking good: http://gcc.gnu.org/ml/gcc-testresults/2005-09/msg00688.html http://gcc.gnu.org/ml/gcc-testresults/2005-09/msg00689.html Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.0.2 RC2

2005-09-18 Thread Ulrich Weigand
r as I can recall, 4.0.2 will be the first ever GCC release with zero testsuite FAILs across all languages on s390-ibm-linux ... Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.0.2 Released

2005-09-29 Thread Ulrich Weigand
to have crept in: FAIL: g++.dg/template/array14.C (test for excess errors) The error is: array14.C: In function 'void t(int)': array14.C:9: error: invalid lvalue in unary '&' Any idea what this is all about? Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Aliasing violation generated by fold_builtin_memcmp?

2005-09-29 Thread Ulrich Weigand
unknown to the front end and gets assigned a default alias set allowing it to alias *nothing* else. (Note that even for Ada, fold_builtin_memcmp *will* be called, e.g. from gimplify.c:gimplify_variable_sized_compare.) Any suggestions how to fix this? Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: GCC 4.0.2 Released

2005-09-30 Thread Ulrich Weigand
anager * GCC 4.0.2 released. +2005-09-21 Mark Mitchell <[EMAIL PROTECTED]> + + PR c++/23993 + * init.c (integral_constant_value): Use DECL_INTEGRAL_CONSTANT_VAR_P. + 2005-09-16 Mark Mitchell <[EMAIL PROTECTED]> PR c++/23914 -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

[RFC] Fortran ICE caused by array addressability issue

2005-10-13 Thread Ulrich Weigand
worse code generation, but only in the -O0 case, which I'm not particularly concerned about ... Any suggestions what the proper fix should be? Thanks, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: Link-time optimzation

2005-11-17 Thread Ulrich Weigand
ld -r" and the linker will pull together all input files, including those from archives, and combine them into one single object file. Then invoke the new "link-optimizer" on that single object file, resulting in an optimized object file. Any reasons why this cannot work? Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: LEGITIMIZE_RELOAD_ADDRESS vs address_reloaded

2005-11-25 Thread Ulrich Weigand
RESS isn't actually involved, as you note: > (*) This is exactly what code in find_reloads_address does on > encoutering invalid indexed address. The trouble is that its > transformation isn't valid until the reloads are done, and we check > constraints before doing the substitutions. :-( Bye, Ulrich -- Dr. Ulrich Weigand Linux on zSeries Development [EMAIL PROTECTED]

Re: ppc-linux and s390-linux compilers requiring 64-bit HWI?

2005-11-27 Thread Ulrich Weigand
90: we want to support -m64 (multilibs can be easily added), and 64-bit HWI simplifies constant handling significantly. There are multiple places in the s390 backend that rely on the size of HWI being > 32-bit, and would likely cause overflow problems otherwise ... Bye, Ulrich -- Dr.

fast_math_flags_set_p vs. set_fast_math_flags inconsistency?

2020-01-20 Thread Ulrich Weigand
plied by -ffast-math? Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: fast_math_flags_set_p vs. set_fast_math_flags inconsistency?

2020-01-21 Thread Ulrich Weigand
Joseph Myers wrote: > On Mon, 20 Jan 2020, Ulrich Weigand wrote: > > > This has the effect that e.g. after > > > > -ffast-math -fno-finite-math-only > > > > the __FAST_MATH__ macro is no longer predefined, but after > > > > -ffast-math -fno-a

Re: fast_math_flags_set_p vs. set_fast_math_flags inconsistency?

2020-01-27 Thread Ulrich Weigand
Joseph Myers wrote: > On Tue, 21 Jan 2020, Ulrich Weigand wrote: > > > It looks like there's multiple cases here. For the two flags > > -fassociative-math and -freciprocal-math, it seems to have happened just as > > you describe: they were created (split out o

Re: fast_math_flags_set_p vs. set_fast_math_flags inconsistency?

2020-01-28 Thread Ulrich Weigand
Joseph Myers wrote: > On Mon, 27 Jan 2020, Ulrich Weigand wrote: > > I see. I guess that makes me wonder what -fno-fast-math *ever* does > > (except canceling a -ffast-math earlier on the command line). Looking > > at the current code, -fno-fast-math (just like -ffast-mat

Re: fast_math_flags_set_p vs. set_fast_math_flags inconsistency?

2020-01-29 Thread Ulrich Weigand
Joseph Myers wrote: > On Tue, 28 Jan 2020, Ulrich Weigand wrote: > > > The following patch (not yet fully tested) implements the above changes. > > Note that this now brings the set of flags set and reset by > > set_fast_math_flags completely in sync with the se

Re: reload question about unmet constraints

2015-09-15 Thread Ulrich Weigand
. If the set of operands accepted by a constraint does *not* have that property, it must not be defined via define_memory_constraint, and you should simply use define_constraint instead. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: reload question about unmet constraints

2015-09-15 Thread Ulrich Weigand
Jim Wilson wrote: > On Tue, Sep 15, 2015 at 7:42 AM, Ulrich Weigand wrote: > > But the only difference between define_memory_constraint and a plain > > define_constraint is just that define_memory_constraint guarantees > > that any memory operand can be made valid by

Re: reload question about unmet constraints

2015-09-16 Thread Ulrich Weigand
sibly duplicated, operand that is a far mem. The Wfr constraint must not be marked as memory constraint (so as to avoid reload attmpting to use it to access a stack slot). But the Y constraint *can* be marked as memory constraint. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: reload question about unmet constraints

2015-09-17 Thread Ulrich Weigand
really see much drawbacks from not marking it ... (You really need the memory constraint marker for constraints that accept only a *subset* of legitimate addresses, so that reload will attempt to reload even addresses that would otherwise be considered legitimate.) Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

[commit, spu] Re: [BUILDROBOT] spu: left shift of negative value

2015-09-21 Thread Ulrich Weigand
rt)); if (start) ! maskbits += ((unsigned HOST_WIDE_INT)1 << (32 - start)); emit_move_insn (mask, GEN_INT (maskbits)); break; case 64: ! maskbits = (~(unsigned HOST_WIDE_INT)0 << (64 - width - start)); if (start) ! maskbits +=

Debugger support for __float128 type?

2015-09-30 Thread Ulrich Weigand
the issue, but nothing seems to have happened so far: https://sourceware.org/bugzilla/show_bug.cgi?id=14857 Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: Debugger support for __float128 type?

2015-10-01 Thread Ulrich Weigand
Joseph Myers wrote: > On Wed, 30 Sep 2015, Ulrich Weigand wrote: > > > - Extend the official DWARF standard in some way > > I think you should do this. > > Note that TS 18661-4 will be coming out very soon, and includes (optional) > types > > * _FloatN, wher

Re: Debugger support for __float128 type?

2015-10-02 Thread Ulrich Weigand
Joseph Myers wrote: > On Thu, 1 Oct 2015, Ulrich Weigand wrote: > > > The _DecimalN types are already supported by DWARF using a base type with > > encoding DW_ATE_decimal_float and the appropriate DW_AT_byte_size. > > Which doesn't actually say whether the DPD or

Re: Debugger support for __float128 type?

2015-10-02 Thread Ulrich Weigand
Joseph Myers wrote: > On Fri, 2 Oct 2015, Ulrich Weigand wrote: > > I see. Well, one could add a DW_ATE_decimal_interchange_float for > > completeness, if necessary. > > Since both DPD and BID are interchange encodings, that doesn't actually > determine things with

Re: reload question about unmet constraints

2015-10-07 Thread Ulrich Weigand
ly be because IRA chooses another alternative for the insn to begin with. Do you have an example that shows the problem? Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: "cc" clobber

2016-02-01 Thread Ulrich Weigand
asm). Not a problem, just a bit > of a surprise. I think on many targets a clobber "cc" works because the backend actually defines a register named "cc" to correspond to the flags. Therefore the normal handling of clobbering named hard registers catches this case as well. This doesn't work on i386 because there the flags register is called "flags" in the back end. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: GCC libatomic ABI specification draft

2016-12-20 Thread Ulrich Weigand
instructions to implement atomic operations on 16-byte data types on those machines. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: GCC libatomic ABI specification draft

2016-12-22 Thread Ulrich Weigand
Szabolcs Nagy wrote: > On 20/12/16 13:26, Ulrich Weigand wrote: > > I may have missed the context of the discussion, but just on the > > specific ISA question here: both Power and z not only have the > > 16-byte CAS (or load-and-reserve/store-conditional), but they also both

Issue with sub-object __builtin_object_size

2014-06-10 Thread Ulrich Weigand
bove cast (explicit or implicit) supposed to modify the notion of "closest surrounding subobject"? Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Issue with attribute ((aligned)) ?

2014-06-17 Thread Ulrich Weigand
(if incorrectly) to the pointer, not the pointed-to data ... (LLVM actually also does it this way.) Is this a bug in GCC (or the documentation)? Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: Issue with sub-object __builtin_object_size

2014-09-15 Thread Ulrich Weigand
Jakub Jelinek wrote: > On Tue, Jun 10, 2014 at 07:37:50PM +0200, Ulrich Weigand wrote: > > the following C++ test case: > > > > struct pollfd > > { > > int fd; > > short int events; > > short int revents; > > }; > > >

Re: Issue with sub-object __builtin_object_size

2014-09-15 Thread Ulrich Weigand
Jason Merrill wrote: > On 09/15/2014 11:21 AM, Ulrich Weigand wrote: > > Jakub Jelinek wrote: > >> On Tue, Jun 10, 2014 at 07:37:50PM +0200, Ulrich Weigand wrote: > >>> the following C++ test case: > >>> > >>> struct pollfd >

Re: Issue with sub-object __builtin_object_size

2014-09-16 Thread Ulrich Weigand
Jason Merrill wrote: > On 09/15/2014 11:55 AM, Ulrich Weigand wrote: > > (https://gcc.gnu.org/ml/gcc/2014-06/msg00116.html) > > > From the __builtin_object_size documentation, it's not immediately > > clear to me whether this is supposed to work or not: > &

Re: Issue with sub-object __builtin_object_size

2014-09-16 Thread Ulrich Weigand
Jason Merrill wrote: > On 09/16/2014 06:23 AM, Ulrich Weigand wrote: > > Now in this case, we cast a pointer to the array to a pointer to a base > > type of the array element type -- but the intent is for the pointer to still > > refer to the whole array. (Of course, this o

Re: Issue with sub-object __builtin_object_size

2014-09-17 Thread Ulrich Weigand
OURCE set to 2 some more checking is added, but some conforming programs might fail. I guess having to use a workaround like the above is good enough. Thanks, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

[RFC] GCC vector extension: binary operators vs. differing signedness

2014-12-10 Thread Ulrich Weigand
tps://gcc.gnu.org/ml/gcc-patches/2013-08/msg01634.html https://gcc.gnu.org/ml/gcc-patches/2013-09/msg00450.html -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: [RFC] GCC vector extension: binary operators vs. differing signedness

2014-12-11 Thread Ulrich Weigand
Richard Biener wrote: > On Wed, Dec 10, 2014 at 10:09 PM, Ulrich Weigand wrote: > > So at the very least, we should bring the documentation in line with the > > actual behavior. However, as seen above, that actual behavior is probably > > not really useful in an

Re: [RFC] GCC vector extension: binary operators vs. differing signedness

2014-12-12 Thread Ulrich Weigand
Richard Biener wrote: > On Thu, Dec 11, 2014 at 4:04 PM, Ulrich Weigand wrote: > > However, if we make that change, there will be some cases that regress: the > > problem is that an expression "x + y" has *one* result type, and some things > > you do with the r

Re: [RFC] GCC vector extension: binary operators vs. differing signedness

2014-12-16 Thread Ulrich Weigand
Richard Biener wrote: > On Fri, Dec 12, 2014 at 1:08 PM, Ulrich Weigand wrote: > > Richard Biener wrote: > >> On Thu, Dec 11, 2014 at 4:04 PM, Ulrich Weigand > >> wrote: > >> > However, if we make that change, there will be some cases that regress

Failure to dlopen libgomp due to static TLS data

2015-02-12 Thread Ulrich Weigand
dule2.so"); } dlclose (m1); dlclose (m2); return 0; } module.c #include __thread int x __attribute__ ((tls_model ("initial-exec"))); void func (void) { printf ("Module %d TLS variable is: %d\n", MODULE, x); } -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: Failure to dlopen libgomp due to static TLS data

2015-02-12 Thread Ulrich Weigand
hat would fix the issue! Thanks for pointing this out. I see that the latest revision: https://sourceware.org/ml/libc-alpha/2014-11/msg00590.html has been pinged a couple of times already, so let me add another ping :-) Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

[RFC/RFA] Obsolete Cell Broadband Engine SPU targets

2019-04-02 Thread Ulrich Weigand
) if test "x$enable_obsolete" != xyes; then -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: [RFC/RFA] Obsolete Cell Broadband Engine SPU targets

2019-04-02 Thread Ulrich Weigand
cc.gnu.org/ml/gcc/2018-10/msg00139.html";> announcement. + + Cell Broadband Engine SPU (spu*-*-*). Details can be found + in the https://gcc.gnu.org/ml/gcc/2019-04/msg00023.html";> + announcement. + -- Dr. Ulrich Weigand GNU/

Re: [RFC/RFA] Obsolete Cell Broadband Engine SPU targets

2019-04-02 Thread Ulrich Weigand
Eric Gallagher wrote: > On 4/2/19, Ulrich Weigand wrote: > > Hello, > > > > the spu-elf target in GCC supports generating code for the SPU processors > > of the Cell Broadband Engine; it has been part of upstream GCC since 2008. > > > > However, at this poin

Re: -fsanitize=thread support on ppc64

2017-01-23 Thread Ulrich Weigand
to be extra work in the libraries to enable 31-bit mode. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com

Re: Register conflicts between output memory address and output register

2018-04-19 Thread Ulrich Weigand
operand, which is written before the instruction is finished using the input operands. Therefore, this operand may not lie in a register that is read by the instruction or as part of any memory address. Note in particular "... as part of any memory address." Bye, Ulrich -- Dr. Ulr

Wrong-code bug in execute_update_addresses_taken?

2011-02-05 Thread Ulrich Weigand
.3453_2 = data; It seems that for some reason, the pass claims to be able to eliminate all statements that take the address of "data", but then leaves the MEM reference unchanged ... Any suggestions on what might cause this problem? Thanks, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: Wrong-code bug in execute_update_addresses_taken?

2011-02-06 Thread Ulrich Weigand
Richard Guenther wrote: > A bug? Can you file a bugreport and CC me? I'll look into the > problem. Sure, this is now PR tree-optimization/47621. Thanks for looking into it! Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: libgcc: strange optimization

2011-08-03 Thread Ulrich Weigand
ons though, much like today they pass constraints through. At the point where register allocation decisions are made, those register annotations would then be acted on. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] rejects-valid: error: initializer element is not computable at load time

2011-08-04 Thread Ulrich Weigand
efined to work according to TR 18037, and it does actually work for me on spu-elf. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-04 Thread Ulrich Weigand
DJ Delorie wrote: > > The only target supporting named address spaces today is spu-elf, > > m32c-elf does too. Huh, I totally missed that, sorry ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] rejects-valid: error: initializer element is not computable at load time

2011-08-05 Thread Ulrich Weigand
Georg-Johann Lay wrote: > Ulrich Weigand wrote: > > This is pretty much working as expected. "pallo" is a string literal > > which (always) resides in the default address space. According to the > > named address space specification (TR 18037) there are no str

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-05 Thread Ulrich Weigand
Georg-Johann Lay wrote: > Ulrich Weigand wrote: > > I'd be happy to bring this up to date if you're willing to work with > > me to get this tested on a target that needs this support ... > > Just attached a patch to bugzilla because an AVR user wanted to play > w

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-05 Thread Ulrich Weigand
or RAM. Then a plain dereference of a __far pointer would do the equivalent of your cast_3 routine above. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-05 Thread Ulrich Weigand
Michael Matz wrote: > On Fri, 5 Aug 2011, Ulrich Weigand wrote: > > Instead, if you just have a address and you don't know ahead of time > > whether it refers to Flash or RAM space, you ought to hold that number > > in an "int" (or "short" or whate

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-05 Thread Ulrich Weigand
as m32c doesn't implement those, just applying the patch wouldn't change anything. But if that capability *would* be helpful on your target, it would certainly be good if you could try it out ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE

Re: [RFC PATCH, i386]: Allow zero_extended addresses (+ problems with reload and offsetable address, "o" constraint)

2011-08-08 Thread Ulrich Weigand
porary; that's up to the target to implement.) Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] rejects-valid: error: initializer element is not computable@load time

2011-08-09 Thread Ulrich Weigand
Georg-Johann Lay wrote: > Ulrich Weigand schrieb: > > It's not a restriction so much, it's simply that TR 18037 does not say > > anything > > about string literals at all, so they keep working as they do in standard C. > > Take the following bit more elabora

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-09 Thread Ulrich Weigand
in touch with the IRA maintainers ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: libgcc: strange optimization

2011-08-09 Thread Ulrich Weigand
the register allocator knows how > to solve. This seems to be pretty much the same as my proposal here: http://gcc.gnu.org/ml/gcc/2011-08/msg00064.html But there was some push-back on requiring additional semantics by some users ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Li

Re: i370 port

2011-08-15 Thread Ulrich Weigand
:2703: error: unable to generate reloads for: You'll need to mark your new constraint as EXTRA_MEMORY_CONSTRAINT so that reload knows what to do when an argument doesn't match. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2011-08-15 Thread Ulrich Weigand
that const_int's do not carry a mode, so you cannot just look at the literal's mode to determine the required size, but have to take the full instruction into account ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2011-08-16 Thread Ulrich Weigand
ODE (in), op0, op1); insn = emit_insn (gen_rtx_SET (VOIDmode, out, in)); code = recog_memoized (insn); Note how this actually performs the check whether to swap operands for commutativity. Can you debug this and find out why this doesn't work in your case? Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2011-08-18 Thread Ulrich Weigand
eeds to look at op1 instead. Can you try changing the lines if (GET_CODE (XEXP (in, 1)) == REG && REGNO (out) == REGNO (XEXP (in, 1))) to if (GET_CODE (op1) == REG && REGNO (out) == REGNO (op1)) instead? Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-18 Thread Ulrich Weigand
hich memory accesses support pre-increment. Therefore, the middle-end will still always check the target's legitimate_address callback to ensure any particular pre-incremented memory access is actually valid. This mechanism can already look at the address space to make its decision ... B

Re: i370 port

2011-08-22 Thread Ulrich Weigand
PRINT_OPERAND, there already seems to be such a format: 'W'. (Maybe not quite; since 'W' sign-extends a 32-bit operand to 64-bit. But since 'W' doesn't seem to be used anyway, maybe this can be changed.) Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: [named address] ice-on-valid: in postreload.c:reload_cse_simplify_operands

2011-08-22 Thread Ulrich Weigand
Georg-Johann Lay wrote: > Ulrich Weigand schrieb: > > Georg-Johann Lay wrote: > > > >>http://gcc.gnu.org/ml/gcc/2011-08/msg00131.html > >> > >>Are you going to install that patch? Or maybe you already installed it? > > > > No, it isn'

Re: Derive more alias information from named address space

2011-09-19 Thread Ulrich Weigand
, MEM_ADDR_SPACE > (x)) >&& !targetm.addr_space.subset_p (MEM_ADDR_SPACE (x), MEM_ADDR_SPACE > (mem))) > return 0; > else > return 1; > } > > Is this correct? Yes, this looks correct to me ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: IRA changes rules of the game

2011-10-20 Thread Ulrich Weigand
) (clobber (reg:CC RCC))] ought to work as expected. (The remaining match_dup is fine, since reload already knows operand 1 is used as input, so the dup doesn't introduce a new type of use.) Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-07-20 Thread Ulrich Weigand
piling simple test cases, but I'd expect effects to be visible in more complex scenarios. Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-08-10 Thread Ulrich Weigand
at? There doesn't seem to be an easy way to do this from the compiler. At the time compiler output is generated, the original source code text isn't even kept any more; you'd have to go back and re-read the original source files using the line-number debug data, just as the assembler would ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-08-11 Thread Ulrich Weigand
ode line (and column) numbers. However, in GCC 3.x I think this wasn't yet present, but you had to rely on line number notes interspersed with the insn stream. In any case, if you build with -g and use in addition the "debug assembler output" flag -dA the assembler output should cont

Re: i370 port

2009-08-12 Thread Ulrich Weigand
contain > > human-readable comments containing line number information. > > The GCC assembler is never invoked. After getting the assembler > output from the -S option, this is fed into IFOX00/IEV90/ASMA90. As Paolo mentioned, the -dA flag is an option to the *compiler* that causes it to place additional information into its output stream (the assembler source code). Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-08-12 Thread Ulrich Weigand
fork" feature. B.t.w. if you cannot execute sub-tasks at all, how does the MVS GCC invoke the preprocessor (I think this was still a separate process in 3.2) and the core compiler (cc1) from the compiler driver? Do you even have a separate compiler driver? Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-08-20 Thread Ulrich Weigand
y ? 'X' : 'S', >mvs_function_name); > #else At this point, you may refer to "current_function_decl" to retrieve information about the function currently being output. In particular, you can retrieve the original source-level name associated with the routine via DECL_NAME (current_function_decl). Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-08-21 Thread Ulrich Weigand
. If you were e.g. to build the Fortran compiler, your back-end gets linked against the Fortran front-end instead of the C front-end, and that function simply will not be there. Generally, the rule is that the back-end must not directly call front-end routines. In any case, for C source code fname_as_string does pretty much nothing else than what I suggested above ... Bye, Ulrich -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com

Re: i370 port

2009-09-14 Thread Ulrich Weigand
ch_dest routine needs to handle those as well. Probably something along the following lines: if (GET_CODE (dest) == IF_THEN_ELSE) { if (GET_CODE (XEXP (dest, 1) == LABEL_REF) dest = XEXP (dest, 1); else dest = XEXP (dest, 2); } gcc_assert (GET_CODE (dest

  1   2   >