Profile

Cover photo
Simon Kågström
Works at Net Insight
Lives in Stockholm, Sweden
216 followers|279,482 views
AboutPostsPhotosVideosReviews

Stream

Simon Kågström

Shared publicly  - 
 
Svårt att se på bilden förstås, men det var en sån där gång när regnet passerade precis intill.
 ·  Translate
1
Gunnar Alm's profile photo
 
Close encounter eller "nära skjuter ingen hare" som det heter på svenska
 ·  Translate
Add a comment...

Simon Kågström

Shared publicly  - 
 
I've released kcov v28 today!

This is mainly a bug fix release, but also add support for .gnu_debuglink sections (Vincent Brillault), and a column in the HTML output which shows execution order.

Get it at the usual place!

#codecoverage   #kcov  
Kcov - code coverage. Kcov is a code coverage tester for compiled programs, Python scripts and shell scripts. It allows collecting code coverage information from executables without special command-line arguments, and continuosly produces output from long-running applications.
2
Add a comment...

Simon Kågström

Shared publicly  - 
 
Lite sommarläsning! För de som inte visste det är x86 faktiskt den ultimata RISC-maskinen: En instruktion (mov) räcker för att få en turingkomplett maskin.

Artikeln visar dessutom att x86 har alldeles för många register - 4 register är tillräckligt för alla operationer (och en instruktion då).
 ·  Translate
1
1
Christian Andersson's profile photo
Add a comment...

Simon Kågström

Shared publicly  - 
 
kcov v27 has been released!

This version has a few fixes: accumulation now works for PIE executables, --include/exclude-path now uses expanded paths, bash and python coverage has improved slightly and the build has been fixed on systems with Python 3 as default.

And apart from that, there are a few improvements as well! A --verify option for the really paranoid has been added. This option will disassemble the code (no less!) before setting breakpoints to make sure that breakpoints are set on actual instructions. Buggy DWARF records generated by the compiler can sometimes cause these issues. Also, a --merge option has been added, which can be used to merge the output of multiple kcov output directories (i.e., what the standalone kcov-merge script did before, but with all normal kcov support). Another improvement is that the coveralls upload functionality can now publish merged results (both with the --merge option and from multiple coverage results in a single output directory).

Other interesting news is that Huon Wilson has implemented a helper to improve continuous integration support for the Rust language. This is done via the http://travis-ci.org infrastructure, and coverage is published on http://coveralls.io with the help of kcov. I can actually see a spike of git clones for kcov since this change :-) 

Kcov is on github: https://github.com/SimonKagstrom/kcov

#kcov   #codecoverage   #unittest   #rust
My script for better Travis CI and Cargo integration has had some improvements, including support for recording test coverage via coveralls.io.
1
Add a comment...

Simon Kågström

Shared publicly  - 
 
"Identical code folding" är något jag tänkt på och sett fram emot, och snart är det här!

När man bygger större C++-program är det otroligt irriterande att se hur massor av identiska symboler genereras för instansieringar av olika templatear. Ett minne blott med GCC 5!

Nu verkar det iofs inte göra så stor skillnad storleksmässigt, men rent estetiskt blir det ett lyft.
 ·  Translate
GCC-5.1 release candidate 1 just branched. Lets take a look what changed in the inter-procedural optimization (IPA) and link-time optimization (LTO) frameworks. Link time optimization (LTO) in GCC 4.5 - GCC 4.9 Last year I w...
2
Add a comment...

Simon Kågström

Shared publicly  - 
 
kcov v26 has been released! This version adds support for covering PIEs (Position-Independent Executables - useful for e.g., rust programs) by Kang Seonghoon, and contains a long list of bash fixes by myself (with support from Mark Hamilton). PowerPC support (and presumably ARM) has also been fixed, and a race condition introduced in v23 is now gone.

#kcov   #codecoverage   #rust   #release  
Kcov - code coverage. Kcov is a code coverage tester for compiled programs, Python scripts and shell scripts. It allows collecting code coverage information from executables without special command-line arguments, and continuosly produces output from long-running applications.
1
Add a comment...

Simon Kågström

Shared publicly  - 
 
Har själv migrerat till github för ganska länge sen, så det är väl inte direkt någon stor förlust för min del.

Det som finns kvar är väl ett par projekt som jag själv övergett, typ uae-wii och frodo-wii/c64-network.org. Mest ett problem för den nya maintainern antar jag!
 ·  Translate
1
Add a comment...
In his circles
183 people
Have him in circles
216 people
Maher Gamal's profile photo
Cecilia “Avokado” Löf's profile photo
Haider Fakhraddin's profile photo
Sarah Skoglund's profile photo
Mikael Karlsson's profile photo
Umberto Pagnini's profile photo
Mads Olesen's profile photo
Sudaryanto Sukimin's profile photo
Keith Burdis's profile photo

Simon Kågström

Shared publicly  - 
 
"– Han hade köpt 50 kilo sprängmedel för att hjälpa kompisen som var i ekonomiskt trångmål och behövde reparera en bil."

Man undrar förstås vad det är för bil och vilket fel det var på den. Ni som vet: blir det billigare med dynamit när man skall reparera länkarmarna?

#sverigedemokraterna   #svepol   #bilskojare  
 ·  Translate
En SD-politiker misstänks vara inblandad i den stora dynamithärvan i Halland, där polisen har beslagtagit 550 kilo sprängämnen. Politikern greps på fredagskvällen, men släpptes senare. ”Misstankarn...
1
Tomas Robertsson's profile photoBjörn Fahller's profile photo
2 comments
 
Med den mängden sprängmedel borde bilen gå att reducera till oidentifierbara småbitar, och då borde det gå att få ut pengar på försäkringen om man anmäler den stulen.

Men det är klart, försök till försäkringsbedrägeri är kanske inte ett helt lysande försvar.

Fast de framstår i.o.f.s som olysande nog för att tänkas försöka.
 ·  Translate
Add a comment...

Simon Kågström

Shared publicly  - 
 
Oj, min gamla webbsida på BTH finns kvar! Sånt här höll jag på med för ganska exakt 10 år sen (eller nåja, det mesta var äldre än så).

För de som inte vet är REX 6000 en tidig PDA, bestyckad med en Z80 och 8KB (tillgängligt) RAM samt en hyggligt stor flash som man kommer åt "bankat" 8KB i taget (har jag för mig). Jag kan säga att det var en utmaning att bygga ett grafiskt äventyrsspel till en sån! REXen hade pekpinne, så spelet är en peka-klicka-historia där man kan ge kommandon som "use rope on tree" osv.

Och man måste ju säga att monokrom grafik är precis rätt genre för mig.

#bth   #rex6000   #adventure  
 ·  Translate
2
Add a comment...

Simon Kågström

Shared publicly  - 
 
"En tomte".
1
Add a comment...

Simon Kågström

Shared publicly  - 
 
Some kcov progress lately: I've implemented a --verify option that checks that all breakpoints actually makes sense before setting them up. And what makes sense in this instance?

Setting them on actual instructions! This might sound silly, but there are compilers which generate broken DWARF debug information  (GCC 4.1 in particular), and basically point file,line pairs into the middle of instructions. Since setting a breakpoint involves patching the instruction (with an int3 instruction in the x86 case), writing in the middle of an instruction will just generate an illegal code flow.

So how does the fix work? Unfortunately, one of the most common architectures - x86 again - uses variable length instructions, so kcov will now (with the --verify option) simply disassemble the program code when setting breakpoints, and give angry warnings if the DWARF information maps into the middle of instructions.

As you can imagine, this slows things down a bit (not that kcov is fast otherwise either), so the verification is off by default. You need binutils-dev and (sometimes) libiberty-dev to build with --verify, otherwise the option simply won't be present.

https://github.com/SimonKagstrom/kcov

#kcov   #codecoverage   #debug  
kcov - Code coverage tool for compiled programs, Python and Bash which uses debugging information to collect and report data without special compilation options
1
Simon Kågström's profile photoAnton Persson's profile photo
5 comments
 
Tack! :)
Add a comment...

Simon Kågström

Shared publicly  - 
 
So it's Pi-day, and what could be more appropriate than merging a pull-request with PIE support for kcov? Kang Seonghoon was kind enough to implement just that, thanks!

Coverage accumulation needs some adaptations for PIEs to work, but that should be possible to implement in the same way as for shared libraries.

#pi   #kcov   #codecoverage  
What an appropriate PR for pi(e) day, heh. :) Anyway, this PR adds two features that enable the support for position-independent executables: Disables the address randomization after fork. While this does not directly enable PIE suppor...
3
Add a comment...
People
In his circles
183 people
Have him in circles
216 people
Maher Gamal's profile photo
Cecilia “Avokado” Löf's profile photo
Haider Fakhraddin's profile photo
Sarah Skoglund's profile photo
Mikael Karlsson's profile photo
Umberto Pagnini's profile photo
Mads Olesen's profile photo
Sudaryanto Sukimin's profile photo
Keith Burdis's profile photo
Basic Information
Gender
Male
Birthday
May 13
Work
Employment
  • Net Insight
    present
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Stockholm, Sweden
Links
Supertrevlig personal. Enkel men god mat till bra pris. Utmärkt take-away.
Public - 4 weeks ago
reviewed 4 weeks ago
1 review
Map
Map
Map