diff --git a/test/codegen/src/java/com/amd/aparapi/test/CharArrayField.java b/test/codegen/src/java/com/amd/aparapi/test/CharArrayField.java index fdf9706e0944ca33f250668b939abe12f88621e5..686a89d11d44f53570d0e247c7558819cd815056 100644 --- a/test/codegen/src/java/com/amd/aparapi/test/CharArrayField.java +++ b/test/codegen/src/java/com/amd/aparapi/test/CharArrayField.java @@ -1,13 +1,32 @@ package com.amd.aparapi.test; -import com.amd.aparapi.Kernel; - -public class CharArrayField extends Kernel{ - @Override public void run() { +public class CharArrayField { + public void run() { out[0] = 0; } char out[] = new char[1]; } -/**{Throws{ClassParseException}Throws}**/ +/**{OpenCL{ + typedef struct This_s{ + __global unsigned short *out; + int passid; + }This; + int get_pass_id(This *this){ + return this->passid; + } + __kernel void run( + __global unsigned short *out, + int passid + ){ + This thisStruct; + This* this=&thisStruct; + this->out = out; + this->passid = passid; + { + this->out[0] = 0; + return; + } + } +}OpenCL}**/ diff --git a/test/codegen/src/java/com/amd/aparapi/test/CharAsParameter.java b/test/codegen/src/java/com/amd/aparapi/test/CharAsParameter.java index 3c630d02d751f8d6d0f07d1bfa5c2af5038d39d4..10525c116d2bbf9ebf2d373cd047346932067630 100644 --- a/test/codegen/src/java/com/amd/aparapi/test/CharAsParameter.java +++ b/test/codegen/src/java/com/amd/aparapi/test/CharAsParameter.java @@ -1,21 +1,41 @@ package com.amd.aparapi.test; -import com.amd.aparapi.Kernel; - -public class CharAsParameter extends Kernel{ +public class CharAsParameter { public char doIt(char x) { return x; } - @Override public void run() { + public void run() { byte b = 0x1; doIt('A'); doIt((char) b); - } } -/**{Throws{ClassParseException}Throws}**/ +/**{OpenCL{ + typedef struct This_s{ + int passid; + }This; + int get_pass_id(This *this){ + return this->passid; + } + unsigned short com_amd_aparapi_test_CharAsParameter__doIt(This *this, unsigned short x){ + return(x); + } + __kernel void run( + int passid + ){ + This thisStruct; + This* this=&thisStruct; + this->passid = passid; + { + char b = 1; + com_amd_aparapi_test_CharAsParameter__doIt(this, 65); + com_amd_aparapi_test_CharAsParameter__doIt(this, (unsigned short )b); + return; + } + } +}OpenCL}**/ diff --git a/test/codegen/src/java/com/amd/aparapi/test/CharType.java b/test/codegen/src/java/com/amd/aparapi/test/CharType.java index 34417cc43193c8b50ccc8b789bdae8abaee2d701..4b170203246f6659d9d04216882deb2533134e18 100644 --- a/test/codegen/src/java/com/amd/aparapi/test/CharType.java +++ b/test/codegen/src/java/com/amd/aparapi/test/CharType.java @@ -2,13 +2,36 @@ package com.amd.aparapi.test; import com.amd.aparapi.Kernel; -public class CharType extends Kernel{ - @Override public void run() { - char c = Character.MAX_VALUE; - out[0] = c; - } +public class CharType extends Kernel { + @Override + public void run() { + final char c = Character.MAX_VALUE; + this.out[0] = c; + } - int out[] = new int[1]; + int out[] = new int[1]; } -/**{Throws{ClassParseException}Throws}**/ +/**{OpenCL{ + typedef struct This_s{ + __global int *out; + int passid; + }This; + int get_pass_id(This *this){ + return this->passid; + } + __kernel void run( + __global int *out, + int passid + ){ + This thisStruct; + This* this=&thisStruct; + this->out = out; + this->passid = passid; + { + unsigned short c = 65535; + this->out[0] = 65535; + return; + } + } +}OpenCL}**/