Add support for a few AMD extensions to cl_additions.h
diff --git a/3-0/include/CL/additions/cl_additions.h b/3-0/include/CL/additions/cl_additions.h
index ce0d3ea..7d758ef 100755
--- a/3-0/include/CL/additions/cl_additions.h
+++ b/3-0/include/CL/additions/cl_additions.h
@@ -194,6 +194,85 @@
     void *               /* value */) CL_API_SUFFIX__VERSION_1_1;
 // </amd_internal>
 
+/*********************************
+* cl_amd_device_attribute_query *
+*********************************/
+#ifndef CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD
+    #define CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_AMD     0x4030
+#endif
+
+#ifndef CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD
+    #define CL_DEVICE_MAX_WORK_GROUP_SIZE_AMD           0x4031
+#endif
+
+#ifndef CL_DEVICE_PREFERRED_CONSTANT_BUFFER_SIZE_AMD
+    #define CL_DEVICE_PREFERRED_CONSTANT_BUFFER_SIZE_AMD    0x4033
+#endif
+
+/**********************
+* cl_amd_liquid_flash *
+***********************/
+#define cl_amd_liquid_flash 1
+
+#define CL_COMMAND_READ_SSG_FILE_AMD 0x4083
+#define CL_COMMAND_WRITE_SSG_FILE_AMD  0x4087
+
+#define CL_INVALID_FILE_OBJECT_AMD 0x4084
+
+typedef struct _cl_file_amd * cl_file_amd;
+
+typedef cl_uint cl_file_flags_amd;
+#define CL_FILE_READ_ONLY_AMD   (1 << 0)
+#define CL_FILE_WRITE_ONLY_AMD  (1 << 1)
+#define CL_FILE_READ_WRITE_AMD  (1 << 2)
+
+typedef cl_uint cl_file_info_amd;
+#define CL_FILE_BLOCK_SIZE_AMD 0x4085
+#define CL_FILE_SIZE_AMD       0x4086
+
+typedef CL_API_ENTRY cl_file_amd
+(CL_API_CALL * clCreateSsgFileObjectAMD_fn)(cl_context /*context*/,
+    cl_file_flags_amd /*flags*/,
+    const wchar_t * /*file_name*/,
+    cl_int * /*errcode_ret*/) CL_EXT_SUFFIX__VERSION_1_2;
+
+typedef CL_API_ENTRY cl_int
+(CL_API_CALL * clGetSsgFileObjectInfoAMD_fn)(cl_file_amd /* file */,
+    cl_file_info_amd /* param_name */,
+    size_t /* param_value_size */,
+    void * /* param_value */,
+    size_t * /* param_value_size_ret */) CL_EXT_SUFFIX__VERSION_1_2;
+
+typedef CL_API_ENTRY cl_int
+(CL_API_CALL * clRetainSsgFileObjectAMD_fn)(cl_file_amd /*file*/) CL_EXT_SUFFIX__VERSION_1_2;
+
+typedef CL_API_ENTRY cl_int
+(CL_API_CALL * clReleaseSsgFileObjectAMD_fn)(cl_file_amd /*file*/) CL_EXT_SUFFIX__VERSION_1_2;
+
+typedef CL_API_ENTRY cl_int
+(CL_API_CALL * clEnqueueReadSsgFileAMD_fn)(cl_command_queue /*command_queue*/,
+    cl_mem /*buffer*/,
+    cl_bool /*blocking_write*/,
+    size_t /*buffer_offset*/,
+    size_t /*cb*/,
+    cl_file_amd /*file*/,
+    size_t /*file_offset*/,
+    cl_uint /*num_events_in_wait_list*/,
+    const cl_event * /*event_wait_list*/,
+    cl_event * /*event*/) CL_EXT_SUFFIX__VERSION_1_2;
+
+typedef CL_API_ENTRY cl_int
+(CL_API_CALL * clEnqueueWriteSsgFileAMD_fn)(cl_command_queue /*command_queue*/,
+    cl_mem /*buffer*/,
+    cl_bool /*blocking_read*/,
+    size_t /*buffer_offset*/,
+    size_t /*cb*/,
+    cl_file_amd /*file*/,
+    size_t /*file_offset*/,
+    cl_uint /*num_events_in_wait_list*/,
+    const cl_event * /*event_wait_list*/,
+    cl_event * /*event*/) CL_EXT_SUFFIX__VERSION_1_2;
+
 #ifdef __cplusplus
 }
 #endif