This is a strange behavior in linear stretch...
convert input.exr -auto-level -linear-stretch 0%x0% -gamma 2 -channel Red -gamma 1 -channel Green -gamma 0.9 -channel Blue -gamma 1.02 +channel -depth 16 -sigmoidal-contrast 5x27.5% -set option:modulate:colorspace hsb -modulate 100,500,100 -auto-level -linear-stretch 0%x0% -clamp -depth 8 -interlace line -quality 98 -sampling-factor 1x1 output_0.jpg


convert input.exr -auto-level -linear-stretch 0%x0% -gamma 2 -channel Red -gamma 1 -channel Green -gamma 0.9 -channel Blue -gamma 1.02 +channel -depth 16 -sigmoidal-contrast 5x27.5% -set option:modulate:colorspace hsb -modulate 100,500,100 -auto-level -linear-stretch 0.00001%x0.00001% -clamp -depth 8 -interlace line -quality 98 -sampling-factor 1x1 output_2.jpg


The only difference is the 0% --> 0.00001% in the final linear-stretch.
I know this might sound like a strange command, but it's part of an automated program... so it's perhaps a bit redundant.
Anyway, I think 0.00001% shouldn't definitely have such a large effect... notice how the histogram changes in the highlights!
The files for you to reproduce this are here:
http://rnbc.dyndns.org/pub/imagemagick_ ... r_stretch/