Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8167068

GLS language errors

XMLWordPrintable

    • x86_64
    • linux

      FULL PRODUCT VERSION :
      java version "1.8.0_102"
      Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
      Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)


      ADDITIONAL OS VERSION INFORMATION :
      Linux zubnix 4.6.3-gentoo #2 SMP Mon Jul 18 14:51:33 CEST 2016 x86_64 Intel(R) Core(TM) i5-6600 CPU @ 3.30GHz GenuineIntel GNU/Linux

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      mesa version 12.0.3


      A DESCRIPTION OF THE PROBLEM :
      When running a javafx application on an embedded environment using the es2 pipe, compiling shaders failes when using mesa and probably also on other platforms.

      This is reoccurring issue on a number of setups:
      http://mail.openjdk.java.net/pipermail/openjfx-dev/2015-July/017575.html
      http://mail.openjdk.java.net/pipermail/openjfx-dev/2016-September/019731.html

      A fix can be found here:
      https://bitbucket.org/javafxports/8u60-rt/commits/595633bbaa

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Launch a javafx program using the es2 pipeline on an affected platform (mesa or other).

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Program does not crash and uses es2 pipe
      ACTUAL -
      Program falls back to software rendering.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Listening for transport dt_socket at address: 5005
      Prism pipeline init order: es2 sw
      Using java-based Pisces rasterizer
      Using dirty region optimizations
      Not using texture mask for primitives
      Not forcing power of 2 sizes for textures
      Using hardware CLAMP_TO_ZERO mode
      Opting in for HiDPI pixel scaling
      Prism pipeline name = com.sun.prism.es2.ES2Pipeline
      Loading ES2 native library ... prism_es2_monocle
      succeeded.
      GLFactory using com.sun.prism.es2.MonocleGLFactory
      (X) Got class = class com.sun.prism.es2.ES2Pipeline
      Initialized prism pipeline: com.sun.prism.es2.ES2Pipeline
      Maximum supported texture size: 8192
      Maximum texture size clamped to 4096
      Non power of two texture support = true
      Maximum number of vertex attributes = 16
      Maximum number of uniform vertex components = 16384
      Maximum number of uniform fragment components = 16384
      Maximum number of varying components = 128
      Maximum number of texture units usable in a vertex shader = 32
      Maximum number of texture units usable in a fragment shader = 32
      Graphics Vendor: Intel Open Source Technology Center
             Renderer: Mesa DRI Intel(R) HD Graphics 530 (Skylake GT2)
              Version: OpenGL ES 3.1 Mesa 12.0.3
       vsync: true vpipe: true
      ES2ResourceFactory: Prism - createStockShader: FillPgram_Color.frag
      ES2ResourceFactory: Prism - createStockShader: Solid_TextureRGB.frag
      new alphas
      ES2ResourceFactory: Prism - createStockShader: Texture_Color.frag
      new alphas
      ES2ResourceFactory: Prism - createStockShader: Solid_TextureFirstPassLCD.frag
      ES2ResourceFactory: Prism - createStockShader: Solid_TextureSecondPassLCD.frag
      ES2ResourceFactory: Prism - createStockShader: Mask_TextureSuper.frag
      ES2ResourceFactory: Prism - createStockShader: Texture_LinearGradient_PAD.frag
      Shader compile log: 0:18(17): error: initializer of global variable `pixcoord' must be a constant expression

      java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at com.sun.prism.es2.ES2ResourceFactory.createStockShader(ES2ResourceFactory.java:312)
      at com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:256)
      at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:477)
      at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:407)
      at com.sun.prism.impl.ps.BaseShaderGraphics.renderShape(BaseShaderGraphics.java:478)
      at com.sun.prism.impl.BaseGraphics.fill(BaseGraphics.java:372)
      at com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1130)
      at com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:830)
      at com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:751)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:572)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2294)
      at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2188)
      at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2214)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2047)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2294)
      at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2188)
      at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2214)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2047)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:477)
      at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:330)
      at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:91)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
      at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
      at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.RuntimeException: Error creating fragment shader
      at com.sun.prism.es2.ES2Shader.createFromSource(ES2Shader.java:141)
      at com.sun.prism.es2.ES2Shader.createFromSource(ES2Shader.java:173)
      at com.sun.prism.es2.ES2ResourceFactory.createShader(ES2ResourceFactory.java:224)
      at com.sun.prism.shader.Texture_LinearGradient_PAD_Loader.loadShader(Texture_LinearGradient_PAD_Loader.java:53)
      ... 83 more
      java.lang.InternalError: Error loading stock shader Texture_LinearGradient_PAD
      at com.sun.prism.es2.ES2ResourceFactory.createStockShader(ES2ResourceFactory.java:315)
      at com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:256)
      at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:477)
      at com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:407)
      at com.sun.prism.impl.ps.BaseShaderGraphics.renderShape(BaseShaderGraphics.java:478)
      at com.sun.prism.impl.BaseGraphics.fill(BaseGraphics.java:372)
      at com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1130)
      at com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:830)
      at com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:751)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:572)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2294)
      at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2188)
      at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2214)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2047)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2294)
      at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2188)
      at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2214)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2047)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
      at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
      at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
      at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
      at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:477)
      at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:330)
      at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:91)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
      at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
      at java.lang.Thread.run(Thread.java:745)
      ES2ResourceFactory: Prism - createStockShader: Texture_LinearGradient_PAD.frag
      Shader compile log: 0:18(17): error: initializer of global variable `pixcoord' must be a constant expression

      REPRODUCIBILITY :
      This bug can be reproduced always.

            jvos Johan Vos
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: