| // Copyright 2019 Google LLC |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // https://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| namespace iree; |
| |
| table SourceMapDef { |
| function_table:[FunctionSourceMapDef]; |
| string_table:[string]; |
| } |
| |
| struct BytecodeSourceLocation { |
| offset:int; |
| location:int; |
| } |
| |
| table FunctionSourceMapDef { |
| location_table:[LocationDef]; |
| bytecode_map:[BytecodeSourceLocation]; |
| } |
| |
| table FileLocationDef { |
| filename:int; |
| line:int; |
| column:int; |
| } |
| |
| table NameLocationDef { |
| name:int; |
| } |
| |
| table CallSiteLocationDef { |
| callee_location:int; |
| caller_location:int; |
| } |
| |
| table FusedLocationDef { |
| locations:[int]; |
| } |
| |
| union LocationDefUnion { |
| FileLocationDef, |
| NameLocationDef, |
| CallSiteLocationDef, |
| FusedLocationDef, |
| } |
| |
| table LocationDef { |
| location_union:LocationDefUnion; |
| } |