All of lore.kernel.org
 help / color / mirror / Atom feed
* [ANNOUNCE] Sparse v0.6.4
@ 2021-09-06  4:21 Luc Van Oostenryck
  2021-09-06 10:04 ` Ben Dooks
  2021-09-28 19:56 ` Uwe Kleine-König
  0 siblings, 2 replies; 8+ messages in thread
From: Luc Van Oostenryck @ 2021-09-06  4:21 UTC (permalink / raw)
  To: linux-sparse; +Cc: Jeff Layton, Uwe Kleine-König

Sparse v0.6.4 is now out.

The source code can be found at its usual repository:
   git://git.kernel.org/pub/scm/devel/sparse/sparse.git v0.6.4

The tarballs can be found at:
   https://www.kernel.org/pub/software/devel/sparse/dist/

Many thanks to people who have somehow contributed to the 299
patches of this release:
   Ramsay Jones, Linus Torvalds, Kyle Russell


Release notes for v0.6.4
------------------------

Changes since v0.6.4-rc1:
  * none

Fixes:
  * build: fix version.h dependencies
  * fix and complete the evaluation of atomic builtins
  * fix some testcases related to bitfield manipulation
  * llvm: fix crash with llvm-11 / use real phi-nodes
  * fix: OP_INLINE should not use the function symbol
  * fix testing if a OP_CALL's function is pure
  * warn on all missing parameter types
  * fix init_linearized_builtins()
  * fix usage count in linearize_fma()
  * linearize: fix a couple of 'selfcheck' warnings
  * cfg: remove phi-sources when merging BBs
  * cfg: remove phi-nodes when merging BBs
  * cfg: add missing REPEAT_CFG_CLEANUP
  * fix: rebuild dominance tree during CFG cleanup
  * fix: drop qualifiers of casts and comma or statement expressions
  * fix kill_insn(OP_SETVAL)
  * fix trivial_phi() when the target is before the single value
  * memops: fix wrong killing of stores partially dominated by a load
  * memops: kill dead loads before phi-node conversion
  * memops: kill more dead stores
  * fix rem_usage() when the pseudo has a use list but is not PSEUDO_REG
  * shut up a silly -Wmaybe-uninitialized warning
  * fix add_join_conditional() when one of the alternative is VOID
  * asm: fix killing OP_ASM
  * asm: fix a test failure on 32-bit systems
  * asm: output *memory* operands need their address as *input*
  * asm: teach dominates() about OP_ASM
  * fix the type in the assignment of 0 to a restricted variable
  * fix SSA conversion of mismatched memops
  * fix and improve the check that protects try_to_simplify_bb()
  * fix remove_merging_phisrc() with duplicated CFG edges.
  * fix null-pointer crash with with ident same as one of the attributes

New:
  * improve CFG simplification
  * teach sparse about -funsigned-bitfields
  * add a symbolic checker
  * expand __builtin_object_size()
  * let plain bitfields default to signed
  * add support for __packed struct
  * handle qualified anonymous structures
  * move check_access() to late_warnings()
  * let phi-sources to directly access to their phi-node
  * small improvements to the ptrlist API
  * warn when taking the address of a built-in function
  * handle more graciously labels with no statement
  * give an explicit type to compare's operands
  * give a type to OP_SYMADDR
  * add some notes about pseudos being typeless
  * shrink struct basic_block
  * pre-proc: strip leading "./" from include paths
  * pre-proc: do some path normalization
  * linearize __builtin_isdigit()

IR Simplifications:
  * simplify: essential OP_ADD & OP_SUB simplifications
  * simplify and canonicalize unsigned compares
  * simplify: basic unop simplifications
  * simplify SEL(SEL(...), ...)
  * simplify SEL(x == y, x, y) and friends
  * simplify SEL(x, x, x) and SEL(x, 0, x)
  * simplify & canonicalize compares
  * simplify CBR-CBR on the same condition
  * simplify unrestricted postop
  * simplification of computed gotos with 1 or 2 targets
  * simplify kill_insn() of unops and unop-ish instructions
  * simplify: put PSEUDO_ARGS and PSEUDO_REGs in canonical order too
  * simplify (~x {&,|,^} x) --> {0,~0,~0}
  * simplify ((x cmp y) {&,|,^} (x !cmp y)) --> {0,1,1}
  * simplify LSR + SEXT into ASR
  * simplify and canonicalize signed compares
  * simplify CMP(AND(x,M), C) and CMP(OR(x,M), C)
  * simplify AND(x >= 0, x < C) --> (unsigned)x < C
  * simplify TRUNC(x) {==,!=} C --> AND(x,M) {==,!=} C
  * simplify of TRUNC(NOT(x)) --> NOT(TRUNC(x))
  * factorize (x OP1 z) OP2 (y OP1 z) into (x OP2 y) OP1 z
  * factorize SHIFT(x, s) OP SHIFT(y, s) into SHIFT((x OP y), s)
  * factorize SEL(x, OP(y,z), y) into OP(SEL(x, z, 0), y)
  * convert SEL(x & BIT1, BIT2, 0) into SHIFT(x & BIT1, S)
  * canonicalize ((x & M) == M) --> ((x & M) != 0) when M is a power-of-2

Testsuite:
  * testsuite: add new tags: check-output-{match,returns}
  * testsuite: fix parsing of tags used in the testcases
  * testsuite: add option '-r' to 'test-suite format'

Documentation:
  * doc: fix: Sphinx's option ':noindex:' renamed into ':noindexentry:'
  * doc: fix extracted autodoc when short description ends with a '?'
  * doc: add some doc about using NULL or VOID in pointer lists
  * doc: add some doc to flowgraph.h
  * doc: extract doc related to simplification

Cleanups:
  * slice: small reorg of OP_SLICE in preparation for some incoming changes
  * cleanup: removed an unused parameter for show_symbol_list()
  * cleanup linearize_cond_branch()
  * cleanup: remove unneeded REPEAT_SYMBOL_CLEANUP
  * cleanup: no needs to use MARK_CURRENT_DELETED() for multi-jumps
  * linearize: remove unneeded forward declarations
  * linearize: only allocate call instructions when needed

-- Luc Van Oostenryck

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-06  4:21 [ANNOUNCE] Sparse v0.6.4 Luc Van Oostenryck
@ 2021-09-06 10:04 ` Ben Dooks
  2021-09-07  6:29   ` Luc Van Oostenryck
  2021-09-28 19:56 ` Uwe Kleine-König
  1 sibling, 1 reply; 8+ messages in thread
From: Ben Dooks @ 2021-09-06 10:04 UTC (permalink / raw)
  To: Luc Van Oostenryck, linux-sparse; +Cc: Jeff Layton, Uwe Kleine-König

On 06/09/2021 05:21, Luc Van Oostenryck wrote:
> Sparse v0.6.4 is now out.
> 
> The source code can be found at its usual repository:
>     git://git.kernel.org/pub/scm/devel/sparse/sparse.git v0.6.4
> 
> The tarballs can be found at:
>     https://www.kernel.org/pub/software/devel/sparse/dist/
> 
> Many thanks to people who have somehow contributed to the 299
> patches of this release:
>     Ramsay Jones, Linus Torvalds, Kyle Russell

This has reminded me I have lost track of the printf formatting
changes. Is it possible to re-sync and work out what still needs
to be done to get this work merged?

-- 
Ben Dooks				http://www.codethink.co.uk/
Senior Engineer				Codethink - Providing Genius

https://www.codethink.co.uk/privacy.html

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-06 10:04 ` Ben Dooks
@ 2021-09-07  6:29   ` Luc Van Oostenryck
  2021-09-28 21:05     ` Ben Dooks
  0 siblings, 1 reply; 8+ messages in thread
From: Luc Van Oostenryck @ 2021-09-07  6:29 UTC (permalink / raw)
  To: Ben Dooks; +Cc: linux-sparse, Jeff Layton, Uwe Kleine-König

On Mon, Sep 06, 2021 at 11:04:14AM +0100, Ben Dooks wrote:
> On 06/09/2021 05:21, Luc Van Oostenryck wrote:
> > Sparse v0.6.4 is now out.
> > 
> > The source code can be found at its usual repository:
> >     git://git.kernel.org/pub/scm/devel/sparse/sparse.git v0.6.4
> > 
> > The tarballs can be found at:
> >     https://www.kernel.org/pub/software/devel/sparse/dist/
> > 
> > Many thanks to people who have somehow contributed to the 299
> > patches of this release:
> >     Ramsay Jones, Linus Torvalds, Kyle Russell
> 
> This has reminded me I have lost track of the printf formatting
> changes. Is it possible to re-sync and work out what still needs
> to be done to get this work merged?

Sure, the series can be merged with just a few trival conflicts.

I think things were left at 
https://lore.kernel.org/linux-sparse/20201013232231.10349-1-luc.vanoostenryck@gmail.com/T/#ma187dd3978640fccac03c0194fd5bdd84c437721

but the series is now at:
  git://github.com/lucvoo/sparse-dev.git format-check

Are these patches fine for you?

-- Luc

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-06  4:21 [ANNOUNCE] Sparse v0.6.4 Luc Van Oostenryck
  2021-09-06 10:04 ` Ben Dooks
@ 2021-09-28 19:56 ` Uwe Kleine-König
  2021-09-28 22:43   ` Ramsay Jones
  1 sibling, 1 reply; 8+ messages in thread
From: Uwe Kleine-König @ 2021-09-28 19:56 UTC (permalink / raw)
  To: Luc Van Oostenryck, linux-sparse; +Cc: Jeff Layton


[-- Attachment #1.1: Type: text/plain, Size: 396 bytes --]

Hi Luc,

On 9/6/21 6:21 AM, Luc Van Oostenryck wrote:
> Sparse v0.6.4 is now out.

I finally came around to update the Debian packaging. There is just a 
(non-critical) problem on x32 where some tests fail. I didn't look 
deeply, but if you care, now you know :-)

https://buildd.debian.org/status/fetch.php?pkg=sparse&arch=x32&ver=0.6.4-1&stamp=1632795062&raw=0

Best regards
Uwe


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-07  6:29   ` Luc Van Oostenryck
@ 2021-09-28 21:05     ` Ben Dooks
  0 siblings, 0 replies; 8+ messages in thread
From: Ben Dooks @ 2021-09-28 21:05 UTC (permalink / raw)
  To: Luc Van Oostenryck; +Cc: linux-sparse, Jeff Layton, Uwe Kleine-König

On 07/09/2021 07:29, Luc Van Oostenryck wrote:
> On Mon, Sep 06, 2021 at 11:04:14AM +0100, Ben Dooks wrote:
>> On 06/09/2021 05:21, Luc Van Oostenryck wrote:
>>> Sparse v0.6.4 is now out.
>>>
>>> The source code can be found at its usual repository:
>>>      git://git.kernel.org/pub/scm/devel/sparse/sparse.git v0.6.4
>>>
>>> The tarballs can be found at:
>>>      https://www.kernel.org/pub/software/devel/sparse/dist/
>>>
>>> Many thanks to people who have somehow contributed to the 299
>>> patches of this release:
>>>      Ramsay Jones, Linus Torvalds, Kyle Russell
>>
>> This has reminded me I have lost track of the printf formatting
>> changes. Is it possible to re-sync and work out what still needs
>> to be done to get this work merged?
> 
> Sure, the series can be merged with just a few trival conflicts.
> 
> I think things were left at
> https://lore.kernel.org/linux-sparse/20201013232231.10349-1-luc.vanoostenryck@gmail.com/T/#ma187dd3978640fccac03c0194fd5bdd84c437721
> 
> but the series is now at:
>    git://github.com/lucvoo/sparse-dev.git format-check
> 
> Are these patches fine for you?

This got lost in a pile of email, sorry.

I'll have a quick look this week.

-- 
Ben Dooks				http://www.codethink.co.uk/
Senior Engineer				Codethink - Providing Genius

https://www.codethink.co.uk/privacy.html

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-28 19:56 ` Uwe Kleine-König
@ 2021-09-28 22:43   ` Ramsay Jones
  2021-09-29  6:54     ` Uwe Kleine-König
  0 siblings, 1 reply; 8+ messages in thread
From: Ramsay Jones @ 2021-09-28 22:43 UTC (permalink / raw)
  To: Uwe Kleine-König, Luc Van Oostenryck, linux-sparse; +Cc: Jeff Layton



On 28/09/2021 20:56, Uwe Kleine-König wrote:
> Hi Luc,
> 
> On 9/6/21 6:21 AM, Luc Van Oostenryck wrote:
>> Sparse v0.6.4 is now out.
> 
> I finally came around to update the Debian packaging. There is just a (non-critical) problem on x32 where some tests fail. I didn't look deeply, but if you care, now you know :-)
> 
> https://buildd.debian.org/status/fetch.php?pkg=sparse&arch=x32&ver=0.6.4-1&stamp=1632795062&raw=0


Hmm, interesting. I tested on Linux Mint 19 32-bit and didn't see any
failures. As far as I can tell, only the 'validation/builtin-objsize0.c'
test is failing (squinting hard at the above!).

Unfortunately, I can't test again tonight, but I will try and take a look
at it tomorrow.

ATB,
Ramsay Jones


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-28 22:43   ` Ramsay Jones
@ 2021-09-29  6:54     ` Uwe Kleine-König
  2021-09-29 21:35       ` Ramsay Jones
  0 siblings, 1 reply; 8+ messages in thread
From: Uwe Kleine-König @ 2021-09-29  6:54 UTC (permalink / raw)
  To: Ramsay Jones, Luc Van Oostenryck, linux-sparse; +Cc: Jeff Layton


[-- Attachment #1.1: Type: text/plain, Size: 919 bytes --]

Hello,

On 9/29/21 12:43 AM, Ramsay Jones wrote:
> On 28/09/2021 20:56, Uwe Kleine-König wrote:
>> On 9/6/21 6:21 AM, Luc Van Oostenryck wrote:
>>> Sparse v0.6.4 is now out.
>>
>> I finally came around to update the Debian packaging. There is just a (non-critical) problem on x32 where some tests fail. I didn't look deeply, but if you care, now you know :-)
>>
>> https://buildd.debian.org/status/fetch.php?pkg=sparse&arch=x32&ver=0.6.4-1&stamp=1632795062&raw=0
> 
> Hmm, interesting. I tested on Linux Mint 19 32-bit and didn't see any
> failures. As far as I can tell, only the 'validation/builtin-objsize0.c'
> test is failing (squinting hard at the above!).

Note that the "normal" 32-bit build was just fine[1]. It's "only" x32[2] 
that is affected.

Best regards
Uwe

[1] See https://buildd.debian.org/status/package.php?p=sparse for the 
overview.
[2] https://wiki.debian.org/X32Port


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ANNOUNCE] Sparse v0.6.4
  2021-09-29  6:54     ` Uwe Kleine-König
@ 2021-09-29 21:35       ` Ramsay Jones
  0 siblings, 0 replies; 8+ messages in thread
From: Ramsay Jones @ 2021-09-29 21:35 UTC (permalink / raw)
  To: Uwe Kleine-König, Luc Van Oostenryck, linux-sparse; +Cc: Jeff Layton



On 29/09/2021 07:54, Uwe Kleine-König wrote:
> Hello,
> 
> On 9/29/21 12:43 AM, Ramsay Jones wrote:
>> On 28/09/2021 20:56, Uwe Kleine-König wrote:
>>> On 9/6/21 6:21 AM, Luc Van Oostenryck wrote:
>>>> Sparse v0.6.4 is now out.
>>>
>>> I finally came around to update the Debian packaging. There is just a (non-critical) problem on x32 where some tests fail. I didn't look deeply, but if you care, now you know :-)
>>>
>>> https://buildd.debian.org/status/fetch.php?pkg=sparse&arch=x32&ver=0.6.4-1&stamp=1632795062&raw=0
>>
>> Hmm, interesting. I tested on Linux Mint 19 32-bit and didn't see any
>> failures. As far as I can tell, only the 'validation/builtin-objsize0.c'
>> test is failing (squinting hard at the above!).
> 
> Note that the "normal" 32-bit build was just fine[1]. It's "only" x32[2] that is affected.

Ah, I missed that small detail. :)

Thanks for putting me right (before booting up my 32-bit system).

ATB,
Ramsay Jones


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-09-29 21:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-06  4:21 [ANNOUNCE] Sparse v0.6.4 Luc Van Oostenryck
2021-09-06 10:04 ` Ben Dooks
2021-09-07  6:29   ` Luc Van Oostenryck
2021-09-28 21:05     ` Ben Dooks
2021-09-28 19:56 ` Uwe Kleine-König
2021-09-28 22:43   ` Ramsay Jones
2021-09-29  6:54     ` Uwe Kleine-König
2021-09-29 21:35       ` Ramsay Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.